css中两个div全是float,如何让一个div在这个div上部

html-css015

css中两个div全是float,如何让一个div在这个div上部,第1张

你可以给需要设置在上面的这个div加一个z-index的属性,比如z-index:999不影响另一个div的方法是给这两个div的父级元素设一个overflow:hidden这是两个div并列的写法。

1、浮动元素会完全脱离文档流,不再占据文档流中的位置

2、设置浮动以后元素会向父元素的左侧或右侧移动,

3、浮动元素默认不会从父元素中移出

4、浮动元素向左或向右移动时,不会超过它前边的其他浮动元素

5、如果浮动元素的上边是一个没有浮动的块元素,则浮动元素无法上移

6、浮动元素不会超过它上边的浮动的兄弟元素,最多最多就是和它一样高

在浮动布局中,父元素的高度默认是被子元素撑开的,当子元素浮动后,其会完全脱离文档流,子元素从文档流中脱离, 将会无法撑起父元素的高度,导致父元素的高度丢失。

父元素高度丢失以后,其下的元素会自动上移,导致页面的布局混乱,所以高度塌陷是浮动布局中比较常见的一个问题,这个问题我们必须要进行处理!

思想:在父元素的后面加内容,内容利用clear清除浮动元素带来的影响

检查下两个DIV的宽度width设置情况,在不定义position(或者position属性相同)的情况下:

不控制div的宽度(width),或者div被其内部的内容撑大,最终会导致浮动异常(不对齐排列)。

解决办法:

两个都浮动的情况:限制两个div的width,最好小于它们父元素的50%,比如两个都是48%;

一个浮动,一个不浮动的情况:不浮动的那个必须限制宽度(至于限制多少就要看浮动的那个有多宽了),否则会占用另一个的向上浮动的空间。不过为了以防万一,最好的方法就是两个都做宽度限制。且宽度加起来不超过可用空间的100%。