<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js"></script>
<script>
$(function () {
var elements = $("*").filter(function () {
return $(this).css("font-weight") == "700";
}).append("Yes it has 'font-weight'");
});
</script>
</head>
<body>
<b>Bold text</b>
</body>
</html>
“b”标签附加了文本是的,它有“font-weight”,尽管它实际上没有这个 CSS 属性。谁能告诉我为什么以及如何避免这种情况?
最佳答案
b
标记隐式具有 700 的字体粗细,因为它是粗体文本的默认字体粗细。这是它的默认值,除非您更改它。
我认为没有办法查明 CSS 属性是在样式表中显式设置,还是由浏览器设置为默认值。唯一的“解决方案”(尽管我首先想知道实际问题是什么)是更改样式表中“b”和“strong”标签的字体粗细。
关于javascript - 为什么 jQuery 匹配甚至没有指定 CSS 属性和值的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6373834/