css组合选择符和less中&作用
1.后代选择器(空格分隔)
2.子元素选择器(>分隔)
3.相邻兄弟选择器(+分隔)
4.普通兄弟选择器(~分隔)
1.后代选择器 : 用于选取某元素的后代元素
以下实例选取所有 <div> 元素中的<p> 元素
<style> div p { background-color:yellow; } </style> <div> <p>段落 1。 在 div 中。</p> // 黄色 <span><p>段落 2。 在 div 中。</p></span> // 黄色 </div> <p>段落 3。不在 div 中。</p> <p>段落 4。不在 div 中。</p>
2. > :只能选择作为某元素直接/一级子元素的元素
以下实例选择了<div>元素中所有直接子元素 <p>
<style> div>p { background-color:yellow; } </style> <div> <h2>My name is Donald</h2> <p>I live in Duckburg.</p> //黄色
<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>
3. + :可选择紧接在另一元素后的元素,且二者有相同父元素
以下实例选取了所有位于 <div> 元素后的第一个 <p> 元素
<style> div+p { background-color:yellow; } </style> <body> <div> <h2>DIV 内部标题</h2> <p>DIV 内部段落。</p> </div> <p>DIV 之后的第一个 P 元素。</p> //黄色 <p>DIV 之后的第二个 P 元素。</p> </body>
4. ~ :选取所有指定元素之后的相邻兄弟元素
以下实例选取了所有 <div> 元素之后的所有相邻兄弟元素 <p>
<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>
&:
1.当作父级类(&直接替换成.head)
.head{
.content{
....
}
&.body{
....
}
}
等价于
.head{
}
.head .content{
....
}
.head.body{
....
}
.a.b和.a .b的区别
前者为且的关系,后者为父子关系
<!-- .a.b --> <div class="a b"></div> <!-- .a .b --> <div class="a"> <div class="b"></div> </div>
2.改变选择器顺序
.head{
.content{
....
}
.body &{
....
}
}
等价于
.head{
}
.head .content{
....
}
.body .head{
....
}
3.组合排列
p,a,ul,li {
...
& + & {
...
}
}
等价于
p,a,ul,li{
}
p+p,
p+a,
p+ul,
p+li,
a+p,
a+a,
a+ul,
a+li,
ul+p,
ul+a,
ul+ul,
ul+li,
li+p,
li+a,
li+ul,
li+li {
}
&会把所有的可能性排列出来
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)