首页 > 为什么标!important的属性没有把*中的属性覆盖掉

为什么标!important的属性没有把*中的属性覆盖掉

为什么没有执行font-size:18px !important。中的内容


我又根据1楼的情况,重新分析了下,确实继承中的问题.在演示中的字体是span,但应用字体的样式是p,所以p中的span依然是使用继承中的样式,如果你需要覆盖继承的,只能对选中该元素标签进行覆盖样式书写,而不是该元素的父级或上上级.
改写后演示:http://codepen.io/yyman001/pen/ZGyyMO


看看你的CSS文件引入的顺序。layout.css放在General.css后面加载。


因为!important这个样式是继承至父级元素。而CCS样式优先级有一条原则就是:
设定的永远大于继承的。
如果你给当前文本所在的DOM节点一个!important属性的话,那它肯定就可以覆盖掉*中的样式了。

这里并不存在像上面所说的文件顺序的问题,只有当两个样式的优先级相同的时候才会受样式规则顺序的影响(后面的样式会覆盖前面的样式),而这里两个样式规则的优先级根本不一样。希望题主明白问题的根源所在,不要被误导了。

演示地址:http://codepen.io/CodingMonkeyzh/pen/BNZRdw


general.css是不是放在后面?

【热门文章】
【热门文章】