CSS选择器,选择器的优先级

CSS选择器

CSS基本语法

  • 选择器 + 声明块
    • 选择器 - 通过CSS选择器选中页面中的指定元素,下面会重点写。
    • 声明块 - 选择器后面跟着的是声明块,使用{}括起来,由一个个声明组成,声明由名值对组成,每一个声明使用;结尾。

常用选择器

1.元素选择器

语法:标签名{}
eg:p{} //为所有的p元素设置样式。

2.ID选择器

语法:#id{} //id值唯一,不能重复
ed: #box{} //为id为box的元素设置样式。

3.类选择器

语法:.class{}
eg: .box{} //为所有的class值为box的元素设置样式。

4.分组选择器(也叫并集选择器)

语法:选择器1,选择器2,选择器N{}
eg: #box1,.box2,p{} //为为id为box1,class为box2和p的元素共同设置样式。

5.交集选择器

语法:选择器1选择器2选择器3{}
eg:p.box1{} //为class值为box1的p元素设置样式,注意id为唯一值,一般id选择器不会存在于交集选择器中(没必要)。

6.后代选择器

语法:选择器1 选择器2{}
eg:p .box{} //选中指定祖先元素p的指定后代.box

7.子元素选择器

语法:父元素>子元素{}
eg:p>.box{} //选中制定父元素p的制定子元素。box。注意与后代元素选择器的区别

8.伪类选择器

  • 伪类可以用来表示一些特殊的状态:
    :link - 未访问过的超链接。
    :visited - 已访问过的超链接。
    :hover - 鼠标移入的元素。
    :active - 正在点击的元素。
    由于选择器优先级的问题,给超链接a设置伪类时,需要注意他们的顺序,一般的顺序是:
    love hate 记作(爱与恨),方便记忆
    :link>:visited>:hover>:active

选择器的优先级

为同一个元素设置多个样式时,此时哪个样式生效由选择器的优先级确定:

  • 选择器的优先级(权重):
· 内联样式 id选择器 类和伪类选择器 元素选择器 统配选择器 继承的样式
优先级 1000 100 10 1 0
  • 当一个选择器中含有多个选择器时,需要将所有的选择器的优先级进行相加,然后再进行比较,优先级高的优先显示,选择器的计算不会超过其最大的数量级(10个id选择器的优先级不能达到1000)
    分组选择器(并集选择器)的优先级单独计算,不会相加。
  • 样式后面加!important,该样式获取最高优先级,内联样式不能加!important属性。
  • 样式相同的谁在下面执行谁(样式的覆盖)。
posted @ 2017-03-30 14:04  大虫吐泡泡  阅读(5142)  评论(0编辑  收藏  举报