css选择器及优先级
时间: 2023-08-23 22:14:33 浏览: 128
CSS选择器权重计算及优先级
CSS选择器是用于选择HTML文档中的元素的模式。常见的CSS选择器包括:
1. 元素选择器:通过元素的标签名选择元素,如`p`选择所有的段落元素。
2. 类选择器:通过元素的class属性选择元素,使用`.`符号,如`.container`选择class为"container"的元素。
3. ID选择器:通过元素的id属性选择元素,使用`#`符号,如`#header`选择id为"header"的元素。
4. 属性选择器:通过元素的属性选择元素,如`[type="text"]`选择所有type属性值为"text"的元素。
5. 后代选择器:通过元素的后代关系选择元素,使用空格分隔,如`.container p`选择class为"container"的元素内部的所有段落元素。
6. 子元素选择器:通过元素的直接子元素关系选择元素,使用`>`符号,如`.container > p`选择class为"container"的元素下的直接子元素中的所有段落元素。
7. 相邻兄弟选择器:通过元素的相邻兄弟关系选择元素,使用`+`符号,如`h2 + p`选择紧接在h2元素后面的p元素。
8. 伪类选择器:通过元素的状态或位置选择元素,如`:hover`选择鼠标悬停的元素。
CSS选择器的优先级表示了当多个选择器同时应用于同一个元素时,哪个选择器的样式规则会被应用。通常,优先级的计算规则如下:
1. ID选择器的优先级最高,为100。
2. 类选择器、属性选择器和伪类选择器的优先级为10。
3. 元素选择器和伪元素选择器的优先级为1。
4. 通配符选择器和继承的样式没有优先级,其优先级为0。
如果多个选择器具有相同的优先级,则后面出现的选择器会覆盖前面出现的选择器。如果多个选择器具有不同的优先级,则优先级高的选择器的样式规则会被应用。
需要注意的是,使用`!important`声明可以提升样式规则的优先级,但是过度使用会导致样式难以维护和调试,应尽量避免滥用。
阅读全文