CSS常用选择器及优先级总结

本文详细介绍了CSS选择器的11种类型,包括标签选择器、类选择器、id选择器等,以及它们的优先级计算规则。通过实例演示了如何应用这些选择器来控制HTML元素的样式。
摘要由CSDN通过智能技术生成

一、常用选择器

1.标签选择器(标签名{}),选中对应标签里的内容,例(div{})

2.类选择器(.类名{}),选中对应类名的内容,例(.one{}

    注:不可以数字开头,一个标签中可有多个类名

3.id选择器(#id{}),选中对应id的内容,例(#one{}

    注:不可以数字开头,一个标签里只能有一个id属性

4.通配符选择器(*{}),选中页面内所有标签

5.后代选择器(元素1 元素2 {}),选择元素1里中所有的元素2,例(ul li{}

6.子元素选择器(元素1 > 元素2{}),选择元素1里所有直接后代元素2

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .nav>a {
            color: pink;
        }
    </style>
</head>

<body>
    <div class="nav">
        <a href="#">我是儿子</a>
        <p>
            <a href="#">我是孙子</a>
        </p>
    </div>
</body>

</html>

此时只有第一个元素a会变色,二第二个元素a属于p元素的直接后代,不能被选中

7.并集选择器(元素1,元素2{}),同时选中多个元素,例(div,p{}

8.伪类选择器

:visited选取已被访问的链接
:link选择未被访问的链接
:active选择鼠标点击后的元素
:hover选择鼠标移动到上面的元素

9.结构伪类选择器

:first-child父元素中第一个子元素
:last-child父元素中最后一个子元素
:nth-child(n)父元素中第n个元素
:first-of-type指定类型的第一个子元素
:last-of-type指定类型的最后一个子元素
:nth-of-type(n)指定类型的第n个元素

注:两者区别为上面的都是在所有元素中选择,下面的在同类别元素中选择

10.属性选择器

E[属性]选中含有指定属性的元素E
E[属性="val"]选中含有指定属性和切属性值=val的元素E
E[属性^="val"]选中含有指定属性和val开头的元素E
E[属性$="val"]选中含有指定属性和val结尾的元素E
E[属性*="val"值]选中指定属性名和含有val的元素E

11.伪元素选择器

::first-letter选择元素首个字母
:first-line选择元素首行
::before在元素内部的前面插入内容
::after在元素内部的后面插入内容

注:befor和after的使用必须配合content

二、选择器优先级

! important>内联(style)> ID选择器 > 类选择器 > 标签选择器>通配符选择器

三、优先级的计算

选择器的优先级是由 (A 、B、C、D) 的值来决定的

1.若有内联(style),A=1

2.B= ID选择器 出现的次数

3.C的值= 类选择器 和 属性选择器 和 伪类选择器 出现的总次数

4.D的值= 标签选择器 和 伪元素选择器 出现的总次数

比较时,从左往右依次比较,权重大者优先级更高

 <style>
        li
        {
            color: red;
        }
        ul li
        {
            color: green;
        }
        .blue li
        {
            color: blue;
        }
        #pink li
        {
            color: pink;
         }
</style>

第一个选择器权重为(0,0,0,1)

第二个选择器权重为(0,0,0,2)

第三个选择器权重为(0,0,1,1)

第四个选择器权重为(0,1,0,1)

所以最后会变成粉色

  • 8
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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`声明可以提升样式规则的优先级,但是过度使用会导致样式难以维护和调试,应尽量避免滥用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值