CSS基础之选择器

简介: CSS基础之选择器

前言 :


CSS中的选择器有基础选择器、组合选择器、属性选择器、伪类选择器、伪元素选择器,在了解选择器之前,我们需要了解:


<style type="text/css">
      /*
        CSS的注释,作用和HTML注释类似,只不过它必须编写在style标签中,或者是css文件中
        CSS的语法:
          选择器 声明块
        选择器:
          - 通过选择器可以选中页面中指定的元素,
            并且将声明块中的样式应用到选择器对应的元素上
        声明块:
          - 声明块紧跟在选择器的后边,使用一对{}括起来,
            声明块中实际上就是一组一组的名值对结构,
              这一组一组的名值对我们称为声明,
            在一个声明块中可以写多个声明,多个声明之间使用;隔开,
            声明的样式名和样式值之间使用:来连接
      */
      p{
        color:red;
        font-size:50px;
      }
    </style>
  </head>
  <body>
    <!-- 这是HTML的注释方式 -->
    <p style="color:red">今天天气真不错,PM2.5也就500</p>
  </body>


以下就是CSS中选择器的分类啦~


- 基础选择器


元素选择器: p{}、div{}等

类选择器: .类名{}

id选择器: #id值{}

通用选择器: *{}


<style type="text/css">
      /* 
        id选择器:
          作用:根据HTML元素的id属性的值选中有特定元素。
          语法:#id属性值 {}
          示例:#demo {}
        需求:将"乡音无改鬓毛衰"改成红色,字体大小改成40px,并为该页面设置一种背景色。
       */
      #demo {
        color: red;
        font-size: 40px;
      }
      /* 
        通配符(通用)选择器
          作用: 选中当前页面的所有元素。
          语法: * {}
       */
      * {
        background-color: yellowgreen;
      }
    </style>
  </head>
  <body>
    <p>少小离家老大回,</p>
    <p id="demo">乡音无改鬓毛衰。</p>
    <p>儿童相见不相识,</p>
    <p>笑问客从何处来。</p>
  </body>


<style type="text/css">
      /* 
        类选择器:
          作用:根据类的值选中有特定class属性的元素。
          语法:.class属性值 {}
          示例:.demo {}
        需求:将当前页面后两句的文本改成红色,字体大小改成40px,并给页面设置一种背景色。
       */
      .demo {
        color: red;
        font-size: 40px;
      }
      .abc {
        background-color: yellowgreen;
      }
    </style>
  </head>
  <body>
    <p>少小离家老大回,</p>
    <p>乡音无改鬓毛衰。</p>
    <p class="demo abc">儿童相见不相识,</p>
    <p class="demo">笑问客从何处来。</p>
  </body>

2da91e0fa18749aba565cb73aeeffc38.png


- 组合选择器


子元素选择器: 父元素 > 子元素 {}

后代选择器: 父元素 子元素 {}

兄弟选择器: 兄 + 弟 {}、兄 ~ 弟 {}

交集选择器:选择器1选择器2选择器3选择器n{}

并集选择器:选择器1,选择器2,选择器3,选择器n{}


<style type="text/css">
    <!--兄弟元素选择器-->
    /*
    p~span{
      color:red;
    }
    */
     /*
    p~div>a{
      background-color: #F0FFFF;      
    }
    */
     /*
     .demo ~ div > a{
       background-color: #FF0000;
     }
     */
    /*
    div.red{
      color: #FF0000;
      font-size: 30px;
    }
    */
    h1,span{
      color: #00FFFF;
    }
    </style>
  </head>
  <body>
    <div>
      我是一个div
      <h1>我是div中的元素
      <span>我是div中的p元素中的span元素</span>
      </h1>
      <span>我是div中的span元素</span>
      </div>
</body>

edacde7bfef04f3bb13b3b0ebac77c89.png


- 属性选择器


CSS表达式 attr() 用来获取选择到的元素的某一HTML属性值,并用于其样式。它也可以用于伪元素,属性值采用伪元素所依附的元素。attr() 表达式可以用于任何CSS属性。


[attr]{}:

[attr=value]{}:

[attr~=value]{}:

[attr^=value]{}:

[attr|=value]{}:

[attr$=value]{}:

[attr*=value]{}:


<title>CSS属性选择器</title>
    <style type="text/css">
    a[target][href] {
      color: #008000;
    }
    /*不带值的选择器
    [attr]{}
    */
    a[target="_blank"] {
      background: #00FFFF;
    }
    /*含有值的选择器
    [attr=value]{}
    */
     [title~=dark] {
       border: 0.125rem solid green;
     }
    [class~=dark]{
      color: #7FFFD4;
    }
    /*部分值属性选择器
     [attr~=]{}
    */
   /*
   [class^=top]{
     background: #FF0000;
   }
   开头[arrt^=value]{}
   [arrt|=value]{}
   结尾[arrt$=value]{}
   [arrt*=value]{}
   */
  [class$="test"] {
    background: #F0FFFF;
  }
   [class |=top]{
       background: #FF0000;
   }
   div[name*="xy"]{
     background: blue;
   }
   /*子串匹配属性选择器
   语法:[attr |=value]
   值必须是完整的或者是单独的单词,比如class="top",这时"top"或者是"top-其他单词"  */
    </style>
  </head>
  <body>
    <h1> 示例1</h1>
    <h1 title="美丽中国">美丽中国</h1>
    <a target="流浪地球" href="聚居月球">流浪地球,聚居月球</a>
    <a href="你好" target="_blank">中国人,你好</a>
    <br/>
    <img  src="" title="backgroud" width="400px" height="240px" />
    <h1 class="bcg dark">这是一个h1标签</h1>
    <h2 class="abc">这是一个h2标签</h2>
    <p class="top">这是子串匹配属性选择器</p>
    <p class="top-text">这是子串匹配属性选择器2</p>
      <p class="topcontent">这个就不能被子串匹配属性选择器选择</p>
      <p class="mytest">这是一个段落</p>
    <div name="xy_dly" >好好学习</div>
    <span name="xy_zk">天天向上</span>
    <div name="xy_kkxx">开开心心</div>
  </body>

dba6645eeb584fddb9cc3225d4a9c99e.png


- 伪类选择器


1、伪类选择器,同一个标签,根据其不同的种状态,有不同的样式。这就叫做“伪类”。伪类用冒号来表示。

比如div是属于box类,这一点很明确,就是属于box类。但是a属于什么类?不明确。因为需要看用户点击前是什么状态,点击后是什么状态。所以,就叫做“伪类”。

2、伪类选择器分为两种,静态伪类和动态伪类。

(1)静态伪类:只能用于超链接的样式。

:link 超链接点击之前

:visited 链接被访问过之后

注意:以上两种样式,只能用于超链接。

(2)动态伪类:针对所有标签都适用的样式。如下:

:hover “悬停”:鼠标放到标签上的时候

:active “激活”: 鼠标点击标签,但是不松手时。

:focus 是某个标签获得焦点时的样式


- 伪元素选择器


<style>
      .firstChild {
        color: lightcoral;
      }
      .lastChild {
        color: lightseagreen;
      }
    </style>
  </head>
  <body>
    <p>
      <span class="firstChild">CSS 人家的全名叫 Cascading Style Sheets的啦</span>
    <br/>
      <span class="lastChild">CSS 算是 HTML 的专业化妆师了。</span>
    </p>
    </body>

06af0cfa53bf42959a7b62aa7133d96b.png


相关文章
|
7天前
|
前端开发
CSS:高级选择器
CSS:高级选择器
20 1
|
7天前
|
前端开发 JavaScript
CSS:基础选择器
CSS:基础选择器
20 1
|
8天前
|
前端开发 JavaScript 容器
谁动了我的选择器?深入理解CSS选择器优先级
该文章详细解释了CSS选择器的工作原理,包括不同种类选择器的权重计算规则,并通过实例说明了如何解决样式冲突问题,确保所需的样式能够正确应用到目标元素上。
|
9天前
|
前端开发
前端基础(四)_CSS层叠样式表_什么是css_css样式的引入方式_样式表的优先级_样式选择器
本文详细介绍了CSS(层叠样式表)的基本概念、语法规则、引入方式、样式表的优先级和样式选择器。文章解释了CSS的作用,展示了如何在HTML中通过行内样式、内部样式和外部样式引入CSS,讨论了不同CSS选择器的优先级和如何确定最终的样式应用。此外,还强调了使用`!important`规则时的优先级高于行内样式。
36 1
|
1月前
|
前端开发 JavaScript
【CSS】选择器
【CSS】选择器
|
2月前
|
前端开发
CSS3选择器
【8月更文挑战第23天】CSS3选择器。
27 1
|
2月前
|
前端开发
CSS中的层级选择器&伪类选择器和伪元素选择器
CSS中的层级选择器&伪类选择器和伪元素选择器
|
2月前
|
前端开发
HTML+CSS基础知识(2)选择器的使用、盒子模型的讲解、列表的使用
该博客文章详细介绍了HTML和CSS的基础知识,包括CSS样式的应用方式、语法规则、选择器的使用、盒子模型、内边距、外边距、元素的显示类型以及overflow属性处理溢出内容的方法,并通过代码示例和测试结果截图展示了这些知识点在网页设计中的应用。
HTML+CSS基础知识(2)选择器的使用、盒子模型的讲解、列表的使用
|
4月前
|
前端开发
CSS选择器详解与应用实例
CSS选择器详解与应用实例
148 44
|
2月前
|
前端开发
解锁CSS神秘面纱:深度剖析类选择器,掌握前端设计的绝密武器!
解锁CSS神秘面纱:深度剖析类选择器,掌握前端设计的绝密武器!