1、实际上所有的选择器都可以去组合使用,但是要注意的是,我们使用选择器越简单越好,浏览器在解析css选择器时
他是按照从右向左的顺序去解析的,然后还要注意尽量避免使用 * 。
2、css中的样式设置具有继承性。祖先元素的样式会自动应用到他的后代元素中.但是并不是所有的样式都具有继承性,
比如,背景颜色就不能继承,他的默认值是transparent,表示透明。如下图:
结果如图下:span实际上无背景颜色,是透明的。所有呈现父元素的黄色。
特殊情况:如果给body设置背景颜色,它会默认将背景颜色应用到其父元素(html)上。
3、选择器的优先级(权重)
当我们使用不同的选择器,为同一个元素设置同一个样式时,到底要使用那个选择器设置的样式呢?
这个由选择器优先级决定,优先级高的优先显示。符合选择器需要将所有的选择器相加而计算。
如果优先级一样,谁在下面谁显示。
优先级的累加,不能超过选择器的最高数量级,阶级不可逾越。
但是我们可以在一个样式的后边添加一个!important 来将该样式设置为优先级最高的样式,这样也会
优先于所有的样式显示。但在开发中和内联样式一样,尽量避免使用。
内联样式:内联样式优先级最大,内联样式会优先于所有的选择器显示,优先级是1000
ID选择器:优先级是100
类和伪类选择器:优先级是10
元素选择器:优先级是1.
通配选择器(*):优先级是0.
继承来的样式:没有优先级。
如下图:最终显示结果,“我是一个P元素”大小为20PX,而“我是一个span”不会继承p标签的样式,而是由通配符选择器决定
,所以最后显示为100PX.