前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CSS - 深入理解选择器的使用方式

CSS - 深入理解选择器的使用方式

作者头像
Kevin_17
发布2024-07-12 10:41:28
780
发布2024-07-12 10:41:28
举报
文章被收录于专栏:Base_CDNKevin

CSS基本选择器

  1. 通配选择器
  2. 元素选择器
  3. 类选择器
  4. id 选择器

通配选择器

  • 作用:可以选中所有HTML元素。
  • 语法:
代码语言:javascript
复制
* {
    属性名;属性值;
}
  • 举例:
代码语言:javascript
复制
/* 选中所有元素 */
* {
    color: orange;
    font-size: 40px;
}

在清除样式方面有很大作用

元素选择器

  • 作用:为页面中_某种元素统一设置样式。_
  • 语法:
代码语言:javascript
复制
标签名 {
    属性名:属性值;
}
  • 举例:
代码语言:javascript
复制
h1 {
    color: orange;
    font-size: 30px;
}

例如说用该选择器对以下代码进行设置:

代码语言:javascript
复制
<h1>元素选择器会选择选定的元素进行设置效果</h1>
<p>1234</p>
<div>通配选择器</div>
<h1>测试1</h1>

得到的就是以下样式:

image.png
image.png

备注:元素选择器无法实现差异化设置,例如上面的代码中,所有的 p 元素效果都一样。

类选择器

  • 作用:根据元素的class值,进行选中元素。
  • 语法:
代码语言:javascript
复制
.类名 {
  属性名:属性值;
}
  • 举例:
代码语言:javascript
复制
.student{
    color: blue;
    font-size: 40px;
}

可以选中所有class为student的元素,对于 <div class="student">软件工程1班</div>来说,效果如下图:

image.png
image.png

一个元素的class可以写多个值,用空格隔开,如:<div class="student soft">软件工程1班</div>

ID选择器

  • 作用:根据元素的id属性值,来精确的选中某个元素。
  • 语法:
代码语言:javascript
复制
#id值 {
  属性名;属性值;
}

总结

image.png
image.png

CSS复合选择器

  1. 复合选择器建立在基本选择器之上,由多个基础选择器,通过不同的方式组合而成。
  2. 复合选择器可以在复杂结构中,快速而准确的选中元素。

交集选择器

  • 作用:选中同时符合多个条件的元素。(且)
  • 语法:选择器1选择器2选择器3 { }
  • 举例:
代码语言:javascript
复制
<style>
        /* 选中:类名为beauty的p元素,为此种写法用的非常多!!!! */
    p.beauty {
        color: blue;
    } 
    /* 选中:类名包含rich和beauty的元素 */
    .rich.beauty {
        color: green;
    }
</style>color: green;
}

并集选择器

  • 作用:选中多个选择器对应的元素,又称:分组选择器。(或)
  • 语法:选择器1,选择器2,选择器3 { }
  • 举例:

一般将每一个类名都换一个行,美观

代码语言:javascript
复制
/* 选中id为peiqi,或类名为rich,或类名为beauty的元素 */
  #peiqi,
  .rich,
  .beauty {
    font-size: 40px;
    background-color: skyblue;
    width: 200px;
}

后代选择器

  • 作用:选中指定元素中,复合要求的后代元素。
  • 语法:祖先选择器 后代选择器 { } (先写祖先,再写后代)

选择器之间,用空格隔开

  • 举例:
代码语言:javascript
复制
<style>
    /* 选中ul中的所有li */
    ul li {
        color: red;
    } 
    /* 选中ul中所有li中的a */
    ul li a {
       color: orange;
    } 
    /* 选中类名为subject元素中的所有li */
    .subject li {
       color: blue;
    } 
    /* 选中类名为subject元素中的所有类名为front-end的li */
    .subject li.front-end {
        color: blue;
    }
</style>

注意:

  1. 后代选择器,最终选择的是后代,不选中祖先。
  2. 儿子、孙子、重孙子,都算是后代。
  3. 结构一定要符合之前讲的 HTML 嵌套要求,例如:不能 p 中写 h1 ~ h6 。

子代选择器

子代选择器只能选择直接子代,即第一层子元素,不能选择更深层的子代。

  • 作用:选中指定元素中,复合要求的子元素(儿子元素)。(先写父,后写子)
  • 语法:选择器1>选择器2>选择器3 { }
  • 举例:
代码语言:javascript
复制
<style>
    /* div中的子代a元素 */
    div>a {
         color: red;
    } 
    /* 类名为persons的元素中的子代a元素 */
    .persons>a {
         color: red;
    }
</style> 
  1. 子代选择器,最终选择的是子代,不是父级。
  2. 子、孙子、重孙子、重重孙子 … 统称后代!,子就是指儿子。

兄弟选择器

选择的都是指定下面的兄弟

相邻兄弟选择器
  • 作用:选中指定元素后,复合条件的相邻兄弟元素。

一定是紧挨着的下一个**** (睡在我下铺的兄弟)

  • 语法:选择器1+选择器2 { }
  • 示例:
代码语言:javascript
复制
/* 选中div后相邻的兄弟p元素 */
div+p {
  color:red;
}
通用兄弟选择器
  • 作用:选中指定元素后,符合条件的所有兄弟元素。(睡在我下铺的所有兄弟)
  • 语法:选择器1~选择器2 { }
  • 示例:
代码语言:javascript
复制
/* 选中div后的所有的兄弟p元素 */
div~p {
  color:red;
}

紧挨着

属性选择器

  • 作用:选中属性值符合一定要求的元素
  • 语法: 1. [属性名] 选中具有某个属性的元素。 2. [属性名=“值”] 选中包含某个属性,且属性值等于指定值的元素。 3. [属性名^=“值”] 选中包含某个属性,且属性值以指定的值开头的元素。 4. [属性名$=“值”] 选中包含某个属性,且属性值以指定的值结尾的元素。 5. [属性名*=“值”] 选择包含某个属性,属性值包含指定值的元素。
  • 举例:
代码语言:javascript
复制
<style>
    /* 选中具有title属性的元素 */
    [title]{
        color:red;
    }
    /* 选中title属性值为atguigu的元素 */
    [title="atguigu"]{
        color:red;
    }
    /* 选中title属性值以a开头的元素 */
    [title^="a"]{
        color:red;
    }
    /* 选中title属性值以u结尾的元素 */
    [title$="u"]{
        color:red;
    }
    /* 选中title属性值包含g的元素 */
    [title*="g"]{
        color:red;
    }
</style>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • CSS基本选择器
    • 通配选择器
      • 元素选择器
        • 类选择器
          • ID选择器
            • 总结
            • CSS复合选择器
              • 交集选择器
                • 并集选择器
                  • 后代选择器
                    • 子代选择器
                      • 兄弟选择器
                        • 相邻兄弟选择器
                        • 通用兄弟选择器
                      • 属性选择器
                      相关产品与服务
                      腾讯云服务器利旧
                      云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                      领券
                      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档