css - 元素在页面上有高度,设置了很高的z-index,但是仍然显示不出来

查看:1069
本文介绍了css - 元素在页面上有高度,设置了很高的z-index,但是仍然显示不出来的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1..header用了fixed定位,也是左右浮动,左边logo,右边nav
nav分左右浮动,都用的overflow:hidden清除浮动,里面的的li用的display:inline-block,每个一级菜单li用了relative定位,二级菜单用的absolute定位,但是现在二级菜单明明有宽度和高度,层级也很高,但是就是图中这样,二级菜单一直只显示一点点,
2.之后我把header中的overflow删掉,它又出来了,我不太明白,我的二级菜单式absolute的,跟overflow有关系吗?

解决方案

overflow: hidden会把非内容区域范围里的东西全部隐藏。你这个二级菜单在header里,由于position: absolute的元素是不属于HTML元素布局流的,也就是说这个元素不会占据和扩充元素位置,所以header的区域如下:

所以不在header内容区内的二级菜单会被隐藏。

Update:
对于脱离元素布局流的解释图:

这篇关于css - 元素在页面上有高度,设置了很高的z-index,但是仍然显示不出来的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆