首页 > 其他分享 >html+css基础--选择器

html+css基础--选择器

时间:2023-02-22 22:23:15浏览次数:39  
标签:span -- 元素 color html 举例 div 选择器

  注:图片来源于w3c 

1、id选择器(只能唯一、#abc)

2、class选择器(可以重复、.abc)(又称类选择器,属性值可有多个,用空格隔开)

3、通用选择器 *

4、复合选择器

    -交集选择器

      作用:选择同时复合多个条件的元素

      语法:选择器1选择器2选择器3选择器n {}

      举例:.a.b.c{ }

      注意点:交集选择器中如果有元素选择器,必须使用元素选择器开头div.abc{ }

         -并集选择器(选择器分组)

      作用:同时选择多个选择器对应的元素

      语法:选择器1,选择器2,选择器3,选择器n{ }

      举例:h1,span,p{ }

5、关系选择器

  - 父元素

    - 直接包含子元素的元素叫做父元素,eg: div 元素是 p 元素和 span 元素的父元素,p 元素是 p 所包含的 span 元素的父元素,但 div 并不是  p 中所包含的 span 元素的父元素,因为两者之间隔了一个 p 元素。

  - 子元素

    - 直接被父元素包含的元素是子元素,eg: p 和 span 是 div 的子元素,p 中的 span 是 p 的子元素,而不是 div 中的子元素,因为 div 和 p 中的 span 是间接 关系,而不是直接关系。

  - 祖先元素

    - 直接或间接包含后代元素的元素叫做祖先元素

    - 一个元素的父元素也是它的祖先元素

  - 后代元素

    - 直接或间接被祖先元素包含的元素叫做后代元素

    - 子元素也是后代元素

  - 兄弟元素

    - 拥有相同父元素的元素是兄弟元素

  - 子元素选择器

    作用:选中指定父元素的指定子元素

    语法:父元素 > 子元素

    举例:

   <div>
        我是一个div
        <p>我是div中的p元素
            <span>我是p元素中的span</span>
        </p>
        <span>我是div中的span元素</span>
        <span>我是div中的span元素</span>
        <span>我是div中的span元素</span>
    </div>
div > span{
            color: orange;
        }

    效果:

     

  - 后代选择器

    作用:选中指定元素内的指定后代元素

    语法:祖先 后代

    举例:

div span{
            color: brown;
        }

    效果:

    

  - 兄弟元素选择器

    选择下一个兄弟(两元素必须是相邻的)

      语法:前一个 + 下一个

    选择下边所有的兄弟

      语法:兄 ~ 弟

    举例: p + span{ color: red; } 

    效果:

    

    举例:  p ~ span{ color: red; } 

    效果:

    

    注:更多详细内容可查看w3c

    

6、属性选择器

  - [属性名] 选择含有指定属性的元素

    举例: [title]{ color:red; } 

    效果:

    

   - [属性名=属性值] 选择含有指定属性和指定属性值的元素

    举例: p[title=abc]{ color:red; } 

    效果:

    

  - [属性名^=属性值] 选择属性值以指定值开头的元素

    举例: p[title^=abc]{ color:red; } 

    效果:

    

  - [属性名$=属性值] 选择属性值以指定值结尾的元素

    举例: p[title$=de]{ color:red; } 

    效果:

    

  - [属性名*=属性值] 选择属性值中含有某值的元素

    举例: p[title*=c]{ color:red; } 

    效果:

    

 7、伪类选择器

  伪类(不存在的类、特殊的类)

    - 伪类用来描述一个元素的特殊状态

      比如:第一个子元素、被点击的子元素、鼠标移入的元素

    - 伪类一般情况下都是使用 : 开头

      :first-child 第一个子元素

      :last-child 最后一个子元素

      :nth-child() 选中第n个子元素         特殊值:           n 第n个 n的范围0到正无穷           2n 或 even 表示选中偶数位的元素           2n+1 或 odd 表示选中奇数位的元素         - 以上这些伪类都是根据所有的子元素进行排序         :first-of-type       :last-of-type       :nth-of-type()         - 这几个伪类元素的功能和上述类似,不同点是他们是在同类型元素中进行排序       举例: 
   <ul>
        <span>span元素</span>
        <li>第〇个</li>
        <li>第一个</li>
        <li>第二个</li>
        <li>第三个</li>
        <li>第四个</li>
        <li>第五个</li>
    </ul>
ul > li:first-of-type{ color: red; }        效果:

       

    - :not()否定伪类

      - 将符合条件的元素从选择器中去除

      举例: ul > li:not(:nth-child(3)){ color: red; } 

      效果:

      

 

    - a元素的伪类 

      :link 用来表示没访问过的链接(正常的链接)

      :visited 用来表示访问的链接

        - 由于隐私原因,所以visited这个伪类只能用来修改链接的颜色

      :hover 用来表示鼠标移入的状态

      :active 用来表示鼠标点击的状态

      举例: <a href="www.baidu.com">百度</a> 

          a:link{ color: green; } 

      效果:

      

 

8、伪元素选择器

  伪元素,表示页面中一些特殊的并不真实的存在元素(特殊的位置),伪元素选择器,用于设置指定元素的样式。

    伪元素使用 :: 开头

    ::first-letter 表示第一个字母

    ::first-line 表示第一行

    ::selection 表示选中的内容     ::before 元素的开始     ::after 元素的最后       - befre 和 after 必须结合 content 属性来使用     举例1:
<p>
        在W3School,您将找到所有属性和选择器的完整 CSS 参考手册,包括语法
    </p

     p::first-line{ color:red; } 

    效果1:

    

    举例2:

p::before{
            content: '我们可以在';
            color: green;
        }

    效果2:

    

 

 

 

 

 

    

 

 

      

      

      

 

 

  

 

 

 

 

    

 

 

 

 

 

 

 

 

 

 

 

 

标签:span,--,元素,color,html,举例,div,选择器
From: https://www.cnblogs.com/wanganli/p/17113402.html

相关文章

  • 模型保存
    目录保存整个模型(保存了模型框架、权重、优化器配置)保存:model.save('less_model.h5')加载:tf.keras.models.load_model('less_model.h5')仅保存架构保存:model.to_json(......
  • 配置项目请求地址和axios以及实现token过期无痛刷新
    配置请求地址:config->index.js一个项目里通常有一个config->index.js,该文件包含了当前项目的请求地址,以及项目的版本信息。//请求地址constAPI_URL_DEV='http://xxx......
  • RSA算法
    客户端回合ClientHello客户端使用的TLS版本支持的密码套件列表随机数(ClientRandom)服务器回合ServerHello确认TLS版本号是否支持选择一个密码套件随机数(S......
  • java之并发编程(上)
    回顾1、线程与进程进程:正在运行的程序,进程包含至少一个或多个线程2、创建线程的方式实现Runable接口继承Thread类(不建议使用,java是单继承,可扩展性差),用start方法通知c......
  • Angular中播放RTSP
     要使用这个库需要先安装我使用了npm来安装https://www.npmjs.com/package/webrtc-streamer需要启动webrtc-streamer后端,这里有下载地址https://github.com/mpromon......
  • 智能合约Solidity去除空行与所有注释代码Python脚本
    importredefremoveComments(string):pattern=r"(\".*?\"|\'.*?\')|((?s)/\*.*?\*/)|(//[^\r\n]*$)"regex=re.compile(pattern,re.MULTILINE|re.DOT......
  • stream wp 及近期学习
    streamwp及近期学习在做stream题目的时候顺便学的东西首先stream.exe文件,看图标考虑python解包  解包后尝试寻找stream文件,并在PYZ-00.pyz_extracted文件中找......
  • 2月22日
    今天继续学习了mysql,在navicat上面做了一个表格,是星期一下午做的那道题,还要谢谢张旭彤同学的帮助。他细心地给我们讲解了一些基本的知识,我现在能在jsp文件下面编写一个简单......
  • spring-申明式事务
    一.什么是事务事务的原则是:处于事务中的sql代码块会保持一致状态,即要么都能改变数据库,要么都不能改变数据库ACID原则:原子性一致性隔离性多个业务可能操作同一个业......
  • ssm学习笔记23001-mybatis-config.xml配置详解
    mybatis-config.xml是mybatis的配置文件,具体的一些标签和属性如下:需要注意的是1、配置项是有顺序要求的2、简写的配置有要求:例如类型别名,如果要简写,需要省掉alias属性,m......