我正试图在我的班级onHover
中悬停,并在span.box
中添加显示效果,但是没有任何想法?
.onHover {
display: block;
width: 200px;
height: 20px;
background: green;
}
.onHover:hover + span.box {
width: 300px;
height: 20px;
background: lightgray;
margin: 10px 0;
}
<div class="onHover">
<span class="box"></span>
<span class="image"></span>
</div>
答案 0 :(得分:1)
问题是您将其应用于inline
元素。您需要为display
设置span
。此外,+
用于选择兄弟姐妹,而不是孩子。将其删除或将其替换为>
:
.onHover {
display: block;
width: 200px;
height: 20px;
background: green;
}
.onHover:hover span.box {
width: 300px;
height: 20px;
background: lightgray;
margin: 10px 0;
display: inline-block;
}
&#13;
<div class="onHover">
<span class="box"></span>
<span class="image"></span>
</div>
&#13;
width
和height
只能为block
和inline-block
元素设置。
答案 1 :(得分:1)
除了删除作为相邻兄弟选择器的+
之外,此处span
是一个孩子。
:hover
无效,因为span
显示为inline
.onHover {
display: block;
width: 200px;
height: 20px;
background: green;
}
.onHover:hover span.box {
width: 300px;
height: 20px;
background: lightgray;
margin: 10px 0;
display:block
}
<div class="onHover">
<span class="box"></span>
<span class="image"></span>
</div>
答案 2 :(得分:0)
像这样使用伪元素:hover
span.box: hover{width:300px; height:20px; background:lightgray; margin:10px 0;}