我在Firebug控制台中运行以下代码。
$('img').css('border', 'solid 2px red').css('border');
出现红色图像边框,但返回一个空字符串,这是为什么?
它在Chrome和Safari开发人员工具中运行良好。
更新 :jQuery文档说,获取CSS值时不支持速记属性。但是我也尝试了以下方法,但在Firefox中没有运气(Chrome和Safari中都可以使用)
$('img').css('border-style', 'solid').css('border-style'); $('img').css('borderStyle', 'solid').css('borderStyle'); $('img').css('border', 'solid 2px green').css('borderStyle');
引用.css文档。
.css
不支持速记CSS属性(例如margin,background, border )。例如,如果要检索渲染的边距,请使用:$(elem).css('marginTop')和$(elem).css('marginRight'),依此类推。
$(elem).css('marginTop')
$(elem).css('marginRight')
对于的情况下border,你需要使用的border-width,border-style和border-color相关属性。
border
border-width
border-style
border-color
例如border-color:
$('img').css('border-top-color', 'red').css('borderTopColor'); $('img').css('border-right-color', 'red').css('borderRightColor'); $('img').css('border-bottom-color', 'red').css('borderBottomColor'); $('img').css('border-left-color', 'red').css('borderLeftColor');