为什么属性名称与:
不同$(elem).css('padding-top')
和
$(elem).css('marginTop')
?不应该是:
$(elem).css('margin-top')
代替?
答案 0 :(得分:4)
您可以使用“camelCase”或“连字符分隔”形式的属性。两者都有效。请参阅jQuery docs for .css()
:
jQuery可以同样解释多字属性的CSS和DOM格式。例如,jQuery理解并返回
.css('background-color')
和.css('backgroundColor')
的正确值。
因此,要使用您的示例,以下所有方法都可以使用:
$(elem).css('marginTop')
$(elem).css('margin-top')
$(elem).css('paddingTop')
$(elem).css('padding-top')
答案 1 :(得分:1)
有两件事。 CSS 如何看待它以及如何使用 JavaScript 访问它。在CSS中,它是:
#element {margin-top: ...;}
而在JavaScript中,它是:
document.getElementById('element').style.marginTop
是的,JavaScript方式和传递给css()
函数的CSS方式都有效。