同一个div里的两个元素,为什么前面的用定位,后面的用浮动,浮动会被盖住,后面的用定位就可以出来?

2024-11-23 03:27:14
推荐回答(3个)
回答1:

absolute是浮动层,浮动层位于普通层之上,所以K3没有浮动时会被K2盖住。如果需要像你说的那样K3去掉浮动还能显示就需要通过z-index设置浮动层的叠加位置,把K2的z-index设置成-1就会显示K3了(普通层的z-index相当于0,设置成-1就把K2放在K3下面了)
跟float:left就没有关系,float:left只是表示这个层靠左.显不显示只跟absolute和z-index有关

回答2:

定位会导致div脱离文档流,意思就是,本来占据的位置会没有了,所以后面的div就自动排到前面去了,而定位的元素默认的层级会高些,所以会导致把后面的div给挡住了

回答3:

给你这一边文章你看看,相信你会明白的,我也是正在学习html+css.
http://www.cnblogs.com/wangfupeng1988/p/4322680.html