###问###求解###

###问###求解###

http://img1.sycdn.imooc.com//climg/5e9f10fa09187c7213070840.jpg我想问下,当鼠标指到家电时,为什么我写h2:hover{display:inline;}和在h2标签里添加a标签,写a:hover{display:inline;}显示不出悬浮停留的效果,而用div:hover{display:inline;}能显示出效果,这是为什么呢

正在回答

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

2回答

同学你好,div:hover 后面还跟着li呢

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

意思是移入div,将li变为行内元素(显示出来)。

而h2中h2:hover{display:inline;},没有写与li 的关系,也不设置li的样式,设置的是h2的样式,这就是区别。

自己再测试理解下,祝学习愉快!

好帮手慕星星 2020-04-22 11:22:08

同学你好,截图中代码实现效果没有问题,很棒!

针对提问问题回复:

代码中设置的li隐藏,那么最后也需要设置li显示出来,无论移入的是哪个元素。

1、h2是块元素,默认有上下间距

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

如果写h2:hover{display:inline;},是将h2变为了行内元素

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

没有了上下间距,所以移入的时候会有抖动的效果

2、在h2中添加a标签也是一样的道理,最终是要让li显示出来,并不是改变其他元素状态哦。

自己再测试理解下,祝学习愉快!

  • 提问者 母鸡阿 #1
    为什么div就行呢,div:hover{display:inline;}这样写div不也变成行内元素了嘛,这和h2,a添加display:inline有什么区别呢,为什么div添加就行呢
    2020-04-22 15:02:46
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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