html中设置层position:absolute;属性后上面的下拉菜单被遮挡,该怎么解决呀,求大神帮助!!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了html中设置层position:absolute;属性后上面的下拉菜单被遮挡,该怎么解决呀,求大神帮助!!相关的知识,希望对你有一定的参考价值。
菜单设置了z-index还
有.menu li position:relative; .menu ul position:absolute; .menu ul li position:relative;
都加了还是不起作用
追答你要确保导航的最外层容器不能包含遮挡层。方便就发一下结构
参考技术B position:relative影响了 参考技术C 你不用给ul li定位。就只给下拉栏目的div定位,可以加上z-index:-99999;试试。 参考技术D z-index:999; 给这个看看position:absolute/relative/fixed小结
1、绝对定位:position:absolute;
当一个div块的位置被定义为绝对定位absolute时,也就意味着它失去了文档流的位置,后面的文档流会紧跟着补上来接替它的位置。如果上下左右的绝对偏移量都是0,那么它将漂浮在原来的位置上,否则,会根据相对该元素外的第一个非static属性的元素进行定位,如果没有非static属性的父元素,则相对于body定位。当偏移后超出浏览器视线的向下或向右的内容不会被隐藏,而是会出现滚动条,但是向左或向上的内容超出后会被隐藏。
2、相对定位:position:relative;
当设置了相对的偏移量后,这个div原来所占据的位置(文档流)不会被后面的文档流填补,而是空在那里。当偏移后所有超出浏览器视线的内容会被隐藏。
3、position:fixed;固定定位
设置后,元素脱离文档流,可以使层级固定不动。
4、absolute/relative/fixed三者区别:
①相对定位relative不会失去文档流的位置,而绝对定位absolute会失去原来在文档流中的位置,被后面的内容所取代。
②无论是相对定位relative、固定定位fixed还是绝对定位absolute,当偏移量内容超出上面、左边浏览器窗体(即可视区域)的时候,超出内容都会被隐藏;但是当偏移量内容超出右边、下面窗体的时候,相对定位relative会隐藏超出部分,而固定定位fixed、绝对定位absolute会出现滚动条。
③相对定位relative、固定定位fixed和绝对定位absolute都会脱离正常文档流,浮动在正常文档流的上面,如果遮盖了正常文档流,可以通过设置z-index来解决。
5、absolute/relative/fixed实际应用
①position的值为absolute或fixed可以创建一个BFC
BFC:块级格式化上下文,把浮动的元素框起来,浮动不会溢出,相当于页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面元素。
BFC作用: a.清除浮动
b.防止margin折叠
c.左右两栏布局
②position:fixed 能够使层固定不动,比如使导航栏不会随页面滚动而滚动。
③绝对定位里这些值可以不指定,能够自动计算:top/left/right/bottom/width/height ,如果冲突了,以width和height为准。处理冲突也是可以进行一些利用,比如居中。
以上是关于html中设置层position:absolute;属性后上面的下拉菜单被遮挡,该怎么解决呀,求大神帮助!!的主要内容,如果未能解决你的问题,请参考以下文章
position:absolute/relative/fixed小结
html中position:absolute绝对定位时总是将一些东西隐藏起来的原因?
overflow:hidden与position:absolute