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>
相关推荐
清灵xmf37 分钟前
在 Vue 3 中实现“折叠”与“展开”文本内容
前端·javascript·css·vue.js
pcplayer1 小时前
WEB 编程:富文本编辑器 Quill 配合 Pico.css 样式被影响的问题之Shadow DOM
前端·css
小肚肚肚肚肚哦2 小时前
浅谈 flex 和 grid 布局
前端·css
知识的宝藏3 小时前
内部css应该放在HTML什么位置
前端·css·html
今天吃了嘛o3 小时前
Vue3中使用tailwindcss插件
前端·css·postcss
边中之城3 小时前
js替换css主题变量并切换iconfont文件
开发语言·javascript·css
墨·殇3 小时前
css实现四角边框
前端·css
袋鼠云数栈前端4 小时前
浅谈数栈产品里的 Descriptions 组件
css·sandbox
懒羊羊大王呀5 小时前
CSS——边框过渡效果
前端·css
jjw_zyfx6 小时前
css 中 ~ 符号、text-indent、ellipsis、ellipsis-2、text-overflow: ellipsis的使用
前端·javascript·css