CSS中的多种关系选择器

后代选择器

选择所有被E元素包含的F元素,中间用空格隔开。

例;

html 复制代码
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .continer p{
            text-align: center;
        }
    </style>
</head>
<body>
    <p>我是后代选择器</p><!--/*该p标签不是continer的后代所以其没有发生改变*/-->
    <div class="continer">
        <div>
            <p>我是后代选择器</p>
            <p>我是后代选择器</p>
            <div>
                <p>我是后代选择器</p>
            </div>
        </div>
    </div>
</body>

子代选择器

选择所有作为E元素的直接子元素F,对更深一层的元素不起作用,用>符号表示。

例:

html 复制代码
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .continer>p{
            text-align: center;
        }
    </style>
</head>
<body>
    <p>我是子代选择器</p><!--/*该p标签不是continer的后代所以其没有发生改变*/-->
    <div class="continer">
            <p>我是子代选择器</p>
            <p>我是子代选择器</p>
            <div>
                <p>我是子代选择器</p><!--/*该p标签不是continer的直接子元素所以其没有发生改变*/-->
            </div>
    </div>
</body>

相邻兄弟选择器

选择进更E元素后的F元素,用+号来表示,选择相邻的第一个兄弟元素。(只能向下选择)。

例:

html 复制代码
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .continer+p{
            text-align: center;
        }
    </style>
</head>
<body>
    <p>我是相邻兄弟选择器</p><!--/*相邻兄弟选择器只能向下选择*/-->
    <div class="continer"></div>
            <p>我是相邻兄弟选择器</p>
            <p>我是相邻兄弟选择器</p><!--/*该p标签不是continer的第一个相邻兄弟元素所以其没有发生改变*/-->
            <div>
                <p>我是相邻兄弟选择器</p><!--/*该p标签不是continer的兄弟元素所以其没有发生改变*/-->
            </div>
</body>
</html>

通用兄弟选择器

选择E元素之后的所有兄弟元素F,用~符号表示。(只能向下选择)

例:

html 复制代码
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .continer~p{
            text-align: center;
        }
    </style>
</head>
<body>
    <p>我是通用兄弟选择器</p><!--/*通用兄弟选择器只能向下选择*/-->
    <div class="continer"></div>
            <p>我是通用兄弟选择器</p>
            <p>我是通用兄弟选择器</p>
            <div>
                <p>我是相邻兄弟选择器</p><!--/*该p标签不是continer的兄弟元素所以其没有发生改变*/-->
            </div>
</body>
相关推荐
ZC跨境爬虫14 分钟前
跟着 MDN 学CSS day_45:媒体查询入门指南——从语法到移动优先实践
前端·css·ui·html·tensorflow·媒体
ZC跨境爬虫1 小时前
跟着 MDN 学CSS day_47:(移动优先实战——从手机到宽屏的响应式进化)
前端·css·html·tensorflow·媒体
ZC跨境爬虫1 小时前
跟着 MDN 学CSS day_46:(响应式实战——用媒体查询打造双列布局)
前端·css·ui·html·tensorflow·媒体
shuoshuohaohao1 小时前
《CSS》
前端·css
用户059540174462 小时前
Redis持久化踩坑实录:RDB+AOF混合持久化,竟会悄无声息丢数据?我用pytest+Docker复现了30次故障场景
前端·css
anno2 小时前
一篇文章带你搞懂 CSS 选择器(带示例 + 对比 + 优缺点总结)
css
moMo2 小时前
# 从重置样式到 BEM 命名:写一个微信的按钮
前端·css
ZC跨境爬虫4 小时前
跟着 MDN 学CSS day_48:深入CSS多列布局——像报纸一样组织内容
前端·css·学习
weixin_427771615 小时前
css加载顺序导致本地和线上样式不一致
前端·css
ZC跨境爬虫12 小时前
跟着 MDN 学CSS day_41:显式轨道、隐式网格与区域命名放置
前端·javascript·css·ui·交互