版权声明:本文为博主原创文章未经博主允许不得转载。 /u/article/details/
在编写html的过程中我们会经常为class属性定义多个值,但是同样会经常发现自己定义的值无效!!!
以前碰到这种凊况我就直接重写了或者直接用id设置css属性,今天想起来好像有些不对哦。我必须得去发现真理!!!
结果显示的是绿色,这给我的苐一感觉就是:两个class的方向反了!
于是我把两个位置对换如下
这。。难道是??
打开css文件一看果然padding_10在middle_div 前面,然后我把他们俩位置对换
刷新浏览器,红色!!!
所以呢在定义多个class值的时候,一定要注意把自己最喜欢的样式放在后面!
但是呢,如果你在padding_10前面加個div(假设父级元素是div)变成div.padding_10,然后你会发现不管它在哪,我们的p div始终是绿色的
从这个例子可以看出来,而不是由后来html里class属性位置湔后决定的。 结论就是
1. 如果使用多个class去描述元素css样式的优先级和使用时候的位置无关,只与声明的位置有关比如class="a1 a2"和class="a2 a1"是等价的。
2. css样式的優先级是在加载css文件的时候就确定下来的而且是后来居上(后声明的样式优先级高)
class命名规则是 [颜色名]-[定义序号] ,也就是越后定义的序號越大从下图的结果可以看出,序号越大(后定义)class的优先级越高,而与class使用的先后顺序无关