Css 第一个父级的较少父级选择器
从有关的文档中,我们可以看到以下示例:Css 第一个父级的较少父级选择器,css,css-selectors,less,Css,Css Selectors,Less,从有关的文档中,我们可以看到以下示例: .header { .menu { border-radius: 5px; .no-borderradius & { background-image: url('images/button-background.png'); } } } 结果将是 .no-borderradius .header .menu {} 如何使用父选择器和获取选择器标题.菜单。无边框半径而不复制代码: ul { l
.header {
.menu {
border-radius: 5px;
.no-borderradius & {
background-image: url('images/button-background.png');
}
}
}
结果将是
.no-borderradius .header .menu {}
如何使用父选择器和
获取选择器标题.菜单。无边框半径
而不复制代码:
ul {
li {
a {
.active &,
&:hover {
color: red;
}
}
}
}
将提供CSS
.active ul li a {color: red;}
但要求的结果是
ul li.active a {color: red;}
您将
&
(父选择器)放置在错误的位置。它不应该放在选择器之后,而应该放在
之前。在选择器后面设置&
意味着整个父选择器(从最上面的选择器)将附加在当前选择器的末尾,而不是在前面插入(这是.header.menu.所需的内容。无边框半径
或ul li.active
.header{
.菜单{
边界半径:5px;
&.no borderradius{/*此处&等于.header.menu*/
背景图片:url('images/button background.png');
}
}
}
保险商实验室{
李{
&.active,/*此处和等于ul li*/
&:悬停{
颜色:红色;
}
}
}
关于问题的更新-目前不可能实现
ul li。使用以下结构作为父选择器的主动a
意味着整个选择器链直到当前级别,而不仅仅是直接父级。无法仅选择直接父级
ul {
li {
a {
.active &,
&:hover {
color: red;
}
}
}
}
目前唯一可行的方法是按如下方式编写:
ul {
li {
&.active a,
a:hover {
color: red;
}
}
}
父选择器有一个目标,但没有决定何时完成。好,但如果结构是
ul li a
,我想为li
添加选择器怎么办?你的意思是它像ul{li{a}}
如果您想将say.active
添加到li
?如果是,则只需将a
选择器更改为&active a
。如果您试图添加类(或其他选择器)从a
内到li
,这是不可能的,因为父选择器&
总是获取完整的父项。是的,您的答案不是我想要的,让我自己有点困惑。将更新question@Justinas:请查看我答案的更新。简言之,目前没有办法实现y您需要使用父选择器。您必须使用会变得非常混乱的变量。