作业中鼠标点击家电,会显示对应的无序列表

作业中鼠标点击家电,会显示对应的无序列表

http://img1.sycdn.imooc.com//climg/5ea6629709c7506002160103.jpg

<!DOCTYPE html>

<html>


<head>

    <meta charset="UTF-8">

    <title>display属性</title>

    <style type="text/css">

    div {

        width: 200px;

    }

    h2{display:inline}

    

    ul li {display:none;}

    

    div:hover ul li{display:inline;}

    

    

    /*补充样式*/

    

    </style>

</head>


<body>

    <div>

        <h2><a href="#">家电</a></h2>

        <ul>

            <li>冰箱</li>

            <li>空调</li>

            <li>洗衣机</li>

        </ul>

    </div>

</body>


</html>

你好,老师,我想咨询一下,作业中要求是鼠标移动至家电字体处,才会显示无序列表ul元素内容,上述代码是否合理?我一开始尝试h2:hover ul li{display:inline},无法实现鼠标移动至家电处,将隐藏的ul属性内容显示

:hover的使用要求是否为,:hover前面为父类,后面为其父类的子类?将代码更改为div:hover ul li{display:inline},但是鼠标并不需要悬停在家电标题上,在家电标题附近就可以将隐藏的内容显示出来(鼠标悬停到div容器内部,就可以触发hover属性么)?老师,代码是否有改进的空间呢?如何改进

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,.ec:hover span {display: block}写法是正确的,但是由于ec下只有span元素,如果默认将span元素隐藏了,div中没有任何内容,那么在页面中是无法显示div的,导致鼠标无法移入div,所以没法实现效果。可以给div设置个宽高背景颜色再测试下。

如果还有问题,可以将你写的完整代码直接粘贴过来,便于帮助同学准确的定位与解决问题,祝学习愉快~


好帮手慕慕子 2020-04-27 15:11:25

同学你好,对于的你问题解答如下:

1、代码实现是正确的。

2、因为h2:hover ul li这种写法表示后代选择器,但是h2和ul是兄弟元素,所以无法实现效果。

3、:hover没有如下要求。 

http://img1.sycdn.imooc.com//climg/5ea68490096f32e309820080.jpg

4、如下所示,通过检查元素可以div实际在页面中占据的区域如下所示,所以鼠标移入加点周围也可以的。

http://img1.sycdn.imooc.com//climg/5ea684d509b9352004840222.jpg

5、同学的代码已经很棒的,不用在优化了

如果我的回答帮助到了你,欢迎采纳,祝学习愉快~

  • 提问者 键盘f11 #1
    老师,你好,另外咨询一下如果div有很多个,相应的不同的div有不同的class命名 <div class="ec"><span></span></div> <div class="er"><span></span></div>,如果我想仅仅在鼠标移动至class=ec处,隐藏的内容才会显示,我如何去用:hover表示呢? 是否为 .ec:hover span{display:block} 这样子我试过好像是不可以实行的?
    2020-04-27 15:25:21
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师