• 技术文章 >web前端 >前端问答

    css提供了几种复合选择器

    醉折花枝作酒筹醉折花枝作酒筹2021-07-15 10:47:12原创79

    css提供了七种复合选择器,分别是:子选择器、相邻选择器、包含选择器、多层选择器嵌套、属性选择器、伪选择器和伪元素选择器。

    本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

    在 CSS 中,可以根据选择器的类型把选择器分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上,对基本选择器进行组合形成的。在四种CSS基础选择器中总结过 CSS 的基础选择器是由单个选择器组成的。

    一、后代选择器

      后代选择器又称为包含选择器,可以选择父元素里面子元素。其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔。当标签发生嵌套时,内层标签就成为外层标签的后代。

    元素1 元素2 { 样式声明 }

    上面语法表示选择元素1里面的所有元素2(后代)。

    1.元素1 和 元素2 中间用空格隔开

    2.元素1 是父级,元素2 是子级,最终选择的是元素2

    3.元素2 可以是儿子,也可以是孙子等,只要是元素1 的后代即可

    4.元素1 和 元素2 可以是任意基础选择器

    后代选择器示例

    二、子选择器

      子元素选择器(子选择器)只能选择作为某元素的最近一级子元素。简单理解就是选亲儿子元素。

    元素1 > 元素2 {样式声明}

    1.元素1和元素2中间用大于号隔开

    2.元素1 是父级,元素2 是子级,最终选择的是元素2

    3.元素2 必须是亲儿子,其孙子、重孙之类都不归他管. 你也可以叫他亲儿子选择器

    <body>
        <div class="nav">
            <a href="#">我是儿子</a>
            <p>
                <a href="#">我是孙子</a>
            </p>
        </div>
    </body>
    .nav a {        /* 后代选择器 */
        color: red;}.nav>a {        /* 子选择器 */
        text-decoration: none;}

    后代选择器与子选择器示例

    三、并集选择器

      并集选择器可以选择多组标签, 同时为他们定义相同的样式。通常用于集体声明。并集选择器是各选择器通过英文逗号( , )连接而成,任何形式的选择器都可以作为并集选择器的一部分。

    元素1,元素2 {样式声明}

    上述语法表示选择元素1 和 元素2。

    1.元素1 和 元素2 中间用逗号隔开

    2.逗号可以理解为和的意思

    3.并集选择器通常用于集体声明

    <body>
        <div>熊大</div>
        <p>熊二</p>
        <span>光头强</span>
        <ul class="pig">
            <li>小猪佩奇</li>
            <li>猪猪侠</li>
        </ul>
    </body>
    div,p,ul li{
        color: blue;
    }

    并集选择器示例

    四、伪类选择器

      伪类选择器用于向某些选择器添加特殊的效果,比如给链接添加特殊效果,或选择第1个,第n个元素。伪类选择器书写最大的特点是用冒号( : )表示,比如 :hover(鼠标经过时) 、 :first-child (选择第一个孩子)。伪类选择器有很多,比如有链接伪类、结构伪类等,这里先总结常用的链接伪类选择器。

    a: link			/* 选择所有未被访问的链接 */
    a: visited	/* 选择所有已经被访问的链接 */
    a: hover		/* 选择鼠标指针位于其上的链接 */
    a: active		/* 选择活动链接(鼠标按下但未弹起的链接) */

    1.为了确保生效,请按照 LVHA 的循顺序声明:link–visited–hover–active。顺序颠倒可能会失效。

    2.因为 a 链接在浏览器中具有默认样式,所以我们实际工作中都需要给链接单独指定样式。

    3.实际工作中,只需要写一个链接的状态和鼠标经过的状态。

    <body>
        <a href="#">打工人</a><br />
        <a href="#">努力做个技术人</a>
    </body>
    a {
        color: #333;
        text-decoration: none;
    }
    a:hover {
        color:blue;
        text-decoration: underline;
    }

    伪类选择器示例

      :focus 伪类选择器用于选取获得焦点的表单元素。焦点就是光标,一般情况 <input> 类表单元素才能获取,因此这个选择器也主要针对于表单元素来说。

    input:focus {
    	background-color: yellow;
    }
    <body>
        <input type="text"><br>
        <input type="text"><br>
        <input type="text">
    </body>
    input:focus {
        background-color: red;
    }

    伪类选择器示例

    五、复合选择器总结

    选择器作用特征使用情况隔开符号
    后代选择器选择后代元素子孙后代都可以较多空格 .nav a
    子代选择器选择最近一级子元素只选亲儿子较少大于号 .nav>p
    并集选择器选择多个元素用于集体声明较多逗号 .nav,p,a
    链接伪类选择器选择不同状态的链接跟链接相关较多冒号 a:hover
    :focus 选择器选择获得光标的表单跟表单相关较少冒号 input:focus

    推荐学习:css视频教程

    以上就是css提供了几种复合选择器的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:css的复合选择器
    上一篇:css3什么时间推出的 下一篇:css不区分大小写吗?
    第16期线上培训班

    相关文章推荐

    • css都有哪些单位• tp5如何引入css文件• css怎么控制元素隐藏• 纯CSS如何实现血轮眼+轮回眼特效(代码详解)• css结构化伪类选择器有哪些

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网