关于父元素撑开问题

关于父元素撑开问题

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
    *{
        margin: 0;
        padding: 0;
      }

.big{
width: 160px;
height: 186px;/*这里固定高度为186px,为什么鼠标移动上去,display隐藏的还可以通过hover出现了? 高度都定小了,为什么它还可以撑开啊?*/
position: fixed;
top: 50%;
left: 0;
margin-top:-93px;
font-family: "微软雅黑";

}
.a{
width: 160px;
height: auto;
background: #333;
border: 1px solid #FFF;
line-height: 60px;
text-align: center;
color:white;
}
.a ul{
width: 160px;
height: auto;
background: #FFF;
/*position: relative;
left: 160px;*/
}
.a ul li{
width: 160px;
height: 60px;
border-bottom: 1px dashed red;
color: red;
text-align: center;  
}
.a ul{
display: none;
}
.a:hover ul{
display: block;
}
</style>
</head>
<body>
	<div class="big">
		<div class="a">
			第一个标题
			<ul>
				<li>a二级标题</li>
				<li>a二级标题</li>
				<li>a二级标题</li>
			</ul>
		</div>
		<div class="a">
			第二个标题
			<ul>
				<li>a二级标题</li>
				<li>a二级标题</li>
				<li>a二级标题</li>
			</ul>
		</div>
		<div class="a">
			第三个标题
			<ul>
				<li>a二级标题</li>
				<li>a二级标题</li>
				<li>a二级标题</li>
			</ul></div>
	</div>
</body>
</html>


正在回答 回答被采纳积分+1

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

1回答
小于飞飞 2017-04-20 11:33:50

你好,虽然设置了height:值,但是由于.a:hover ul 会显示出来的,其实内容已经超出了高度,所以在网页布局有溢出的设置overflow:hidden , 如设置这个,就好隐藏掉高度以外的内容了。希望对你有帮助,祝学习愉快。

  • 提问者 晚小鱼 #1
    老师你好,“虽然设置了height:值,但是由于.a:hover ul 会显示出来的,其实内容已经超出了高度”这一句我听懂了,既然超过高度了,为什么鼠标指上去 还会显示啊?
    2017-04-20 11:41:27
  • 小于飞飞 回复 提问者 晚小鱼 #2
    你好,根据代码情况说明,可以试一试,子元素的高和宽大于父元素的高宽时,子元素会显示出来,不会自动受父元素的高宽的限制,所以在显示的内容上,鼠标移动上去,可以触发相应的hover, 并将ul显示不来。
    2017-04-20 14:02:16
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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