css组合选择符

<style type="text/css">
 
    div.demo{
        color: black;
    }
    div.wrap .demo{
        color: yellow;
    }
    div.wrap > .demo{
        color: blue;
    }
    div.wrap + .demo{
        color: red;
    }
    div.demo + .demo{
        color: red;
    }
 </style>
 
<div class="wrap">
    <div class="demo">
        Hello
    </div>
  <div class="demo">
    World
  </div>
</div>

Hello 和 world 两个单词分别是什么颜色?

CSS组合选择符:

  1. 后代选择器(以空格分隔)
  2. 子元素选择器(以 > 分隔)
  3. 相邻兄弟选择器( 以 + 分隔)
  4. 普通兄弟选择器(以 ~ 分隔)
<!--后代选择器-->
<style>
div p
{
	background-color:yellow;
}
</style>
<body>
<div>
<p>段落 1。 在 div 中。</p>
<p>段落 2。 在 div 中。</p>
</div>

<p>段落 3。不在 div 中。</p>
<p>段落 4。不在 div 中。</p>
</body>

在这里插入图片描述

<!--子代选择器-->
<style>
div>p
{
	background-color:yellow;
}
</style>
<body>
<h1>Welcome to My Homepage</h1>
<div>
<h2>My name is Donald</h2>
<p>I live in Duckburg.</p>
</div>

<div>
<span><p>I will not be styled.</p></span>
</div>

<p>My best friend is Mickey.</p>
</body>

在这里插入图片描述

<!--相邻兄弟选择器-->
<style>
div+p
{
	background-color:yellow;
}
</style>
<body>
<h1>Welcome to My Homepage</h1>
<div>
<h2>My name is Donald</h2>
<p>I live in Duckburg.</p>
</div>

<div>
<span><p>I will not be styled.</p></span>
</div>

<p>My best friend is Mickey.</p>
</body>

在这里插入图片描述

<!--普通兄弟选择器-->
<style>
div~p
{
	background-color:yellow;
}
</style>
<body>
	
<p>之前段落,不会添加背景颜色。</p>
<div>
<p>段落 1。 在 div 中。</p>
<p>段落 2。 在 div 中。</p>
</div>

<p>段落 3。不在 div 中。</p>
<p>段落 4。不在 div 中。</p>

</body>

在这里插入图片描述
详细点这里,可以在线运行 > 菜鸟教程-css组合选择符

题目来源牛客网

### CSS3 中用于对齐的组合选择器及其用法 #### 类型一:后代选择器 后代选择器通过空格分隔两个选择器,表示第二个选择器匹配的是第一个选择器内部任意层级下的子元素。对于对齐操作而言,如果希望特定容器内的所有段落都居中显示,则可采用如下写法: ```css .container p { text-align: center; } ``` 此代码片段意味着 `.container` 下所有的 `<p>` 标签中的文本都将被设置为居中对齐[^1]。 #### 类型二:子代选择器 子代选择器利用 `>` 符号连接父级与子级标签名或类名,仅作用于直系父子关系间的选择。假设有一个无序列表,其中每一项均需右对齐其内嵌的文字内容,那么应该这样编写样式规则: ```css ul > li { text-align: right; } ``` 上述声明使得每一个直接位于 `<ul>` 列表之下的 `<li>` 项目里的文字都会向右侧排列。 #### 类型三:相邻兄弟选择器 相邻兄弟选择器借助加号 `+` 来定位紧接在前一个同辈节点之后立即出现的目标元素。比如,在某些布局设计里可能需要让紧跟在一个标题后面的段落在视觉上显得更加紧凑——即左对齐而不是继承自上级块状结构的其他对齐模式: ```css h2 + p { margin-0.5em; text-align: left; } ``` 这里不仅调整了间距参数还指定了该特殊位置处的段落应保持左侧边缘整齐。 #### 类型四:通用兄弟选择器 通用兄弟选择器运用波浪线 `~` 表达一种较为宽松的关系,只要求目标元素处于源元素同一层次之下即可满足条件而不论其间是否有间隔。考虑这样一个场景:页面中有多个图片并列展示,并且每张图下方都有描述性的说明文字;为了使这些注解统一采取中心化处理,可以这样做: ```css img ~ figcaption { display: block; width: 100%; text-align: center; } ``` 这段代码确保无论有多少个连续或者不连续分布的图像存在,它们对应的解释性短语都能按照预期效果呈现出来。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值