4-7编程题为何不生效
<style type="text/css">
/*样式补充*/
/*取消默认样式*/
body,div,h3,ul,li{
padding: 0;
margin: 0;
}
li{
list-style: none;
}
div.big{
width: 100px;
margin: 10px auto;
border: 1px solid #E1E1E1;
text-align: center;
}
h3{
border-bottom: 1px solid #E1E1E1;
background-color: #EEEEEE;
}
.div2 h3, .div3 h3 {
border-top: 1px solid #E1E1E1;
}
li{
display: none;
}
.div1:hover .elec{
display: block;
}
</style>
</head>
<body>
<div class="big">
<div class="div1">
<h3>家电</h3>
<ul class="elec">
<li>冰箱</li>
<li>洗衣机</li>
<li>空调</li>
</ul>
</div>
<div class="div2">
<h3>洗护</h3>
<ul class="wash">
<li>洗衣液</li>
<li>消毒液</li>
<li>柔顺剂</li>
</ul>
</div>
<div class="div3">
<h3>衣物</h3>
<ul class="clothes">
<li>衬衫</li>
<li>裤子</li>
<li>卫衣</li>
</ul>
</div>
</div>
</body>
正在回答
同学你好,因为.big h3:hover li这种写法是后代选择器,表示鼠标移入h3时,让它的后代元素li显示出来,但html结构中li不是h3后代元素,而是h3的相邻兄弟元素ul的后代元素,所以无法实现效果。如下:
可以给div里面的h3设置hover样式,但是需要使用到后面学习的css3选择器,即:相邻兄弟选择器。
老师这里给同学写个示例,同学先了解下,后面讲解了,同学自然就懂了。
祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星