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>
相关推荐
feixing_fx4 小时前
告别枯燥字体:Web 字体加载策略与 font-display 最佳实践
前端·css·前端框架·交互·css3
ly76898 小时前
CSS 从入门到进阶:系统掌握现代网页样式与布局
前端·css
前端技术官9 小时前
一行 CSS 新特性干掉 20 行 JavaScript ?
css·滚动驱动动画·容器查询·:has()·anchor positioning
Beginner x_u12 小时前
Tailwind CSS 速通:有 CSS 基础的实战入门
css·tailwindcss·工程化
WL_arm1 天前
Vibe Coding(氛围编程)入门
javascript·css·人工智能·html5
谙忆10242 天前
图片裁剪总是跑偏?用 object-fit、object-position 和真实像素把坐标对齐
javascript·css·图像识别
01_ice2 天前
前端学习css
前端·css·学习
zh_xuan3 天前
个人主页左侧菜单支持分组,以及菜单显示和隐藏
前端·javascript·css
Ming_studying3 天前
HTML + CSS + JavaScript实现可视化JSON工具:格式化、折叠、搜索与错误定位
javascript·css·html·json·数据可视化·web工具
To_OC3 天前
面试被问了三回三栏布局,这次我终于把 BFC 那层窗户纸捅破了
前端·css·面试