使用jquery无法正常使字体变得正常

时间:2015-09-23 11:46:29

标签: jquery css

我有div,如下所示:

&LT; div id="div1" ><strong>some text</strong></div>

我想使用jquery使字体正常。我尝试如下:

$("#div1").css("font-weight", "normal !important");

但它不起作用!!

2 个答案:

答案 0 :(得分:4)

您需要选择<strong>而非div。

&#13;
&#13;
$("#div1 strong").css("font-weight", "normal");
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1"><strong>some text</strong>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您的代码所做的是设置<div>内容的字体粗细,使用!important可以帮助覆盖同一元素的其他css设置。

但有两个问题:

一个问题是内容(text ...)位于嵌套元素中,并且具有自己的样式。您可以设置嵌套元素的样式,也可以完全删除它。

另一个是!important doesn't work inside $().css()。所以你应该尽量摆脱它(避免复杂的解决方案)。

假设您需要一个元素来包装文本(无论出于何种原因),我建议用更合适的描述性元素替换它(或者更确切地说,在这种情况下描述性较差)并根据需要使用该样式:

$("#myText").css("font-weight", "normal");
#myText {
  font-weight: bold
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="div1" ><span id="myText">some text</span></div>