如果层次结构如下:
。全部 .d1 .d2
我想通过“.d2”选择“.all”。会怎么样?例子:
。全部 .d1 .d2 &:徘徊 & 。全部 ...
行“& .all”编译.all ... ???
如果层次结构如下:
。全部 .d1 .d2
我想通过“.d2”选择“.all”。会怎么样?例子:
。全部 .d1 .d2 &:徘徊 & 。全部 ...
行“& .all”编译.all ... ???
如果你只是想对 做点什么<div class="all">
,那么你可以这样做,例如:
.all
color: red
如果你想改变里面的每一件事<div class="all">
,那么你可以这样做:
.all *
color: red
最后,如果您只想更改 的直接子级<div class="all">
,可以这样做:
.all > *
color: red
您只需在 .all 下定义所需的样式:
.all
background: #000 center center no-repeat
margin: 0 auto
.dl
background: #fff center center no-repeat
margin: 15px
&:hover
margin: 0
text-decoration: none
这将输出为
.all {
background: #000 center center no-repeat;
margin: 0 auto;
}
.all .d1 {
background: #fff center center no-repeat;
margin: 15px;
}
.all .d1:hover {
margin: 0;
text-decoration: none;
}
编辑
一开始我没看懂你的问题。答案是这不能通过 CSS 实现。你会想要使用 jQuery 来完成这样的事情:
像这样:http: //jsfiddle.net/9ntg7/1/
SASS
.all
position: relative
display: block
height: 100px
width: 100px
z-index: 1
.dl
position: absolute
top: 50%
left: 50%
display: block
height: 50px
width: 50px
margin: -25px 0 0 -25px
z-index: 2
background: white
.all1
background: green
.all2
background: red
Javascript
$(".dl").hover(function () {
$(".all").removeClass(".all1")
$(".all").addClass("all2");
});
你期望输出什么?在您给定的示例中,您将获得这样的选择器:
.all .d1 .d2.all:hover
...如果我知道 SASS(我使用 LESS)。
这是你想要的,还是你最终想要的?