css三大布局

标准流:

从左到右,从上到下块级元素独占一行,行内元素碰到父盒子边缘换行

浮动:

特点

1 元素浮动之后不占据原来的位置(脱标),变成立体,下面可以有东西,只影响下面的

2 浮动的盒子在一行上显示

行内元素浮动之后转换为行内块元素(可以定义宽高)。(不推荐使用,转行内元素最好使用display: inline-block;

作用

文本绕图:文字到图片的右边

制作导航

网页布局

清除浮动:

1 给浮动的盒子加父盒子,并且设置高度

2 额外标签法:再最后一个浮动的盒子后加 <div id="" style="clear: both;"></div>

3 给浮动的盒子的父盒子加 overflow:hidden(在解决父边框塌陷时用过)  相当于设置了父元素的高度,如果有子元素到了父元素的外面,此方法不适用 

4 用伪元素清楚浮动:给父盒子加类(clearfix)推荐使用

.clearfix:after {
content: ".";
display: block;
height: 0;
line-height: 0;
visibility: hidden;
clear: both;
}

兼容IE浏览器
.clearfix {
zoom: 1;
}

与行内块元素区别:浮动可以设置左浮动和右浮动

定位:

方向:left  right top bottom

static 静态定位  

是默认值,相当于标准流

absolute 绝对定位

特点:

1 元素使用绝对定位之后不占据原来的位置(脱标)

2 元素使用绝对定位,位置是从浏览器出发。

3 嵌套的盒子,父盒子没有使用定位,子盒子绝对定位,子盒子位置是从浏览器出发。

4 嵌套的盒子,父盒子使用定位,子盒子绝对定位,子盒子位置是从父元素位置出发。

5 给行内元素使用绝对定位之后,转换为行内块(可以设置宽高)。(不推荐使用,推荐使用display:inline-block;

relative 相对定位 

特点:

1 使用相对定位,位置从自身出发。

2 还占据原来的位置。

子绝父相(父元素相对定位,子元素绝对定位)(父元素占据位置,子元素随意浮动)

4 行内元素使用相对定位不能转行内块

fixed  固定定位

特点:

1 固定定位之后,不占据原来的位置(脱标)

2 元素使用固定定位之后,位置从浏览器出发。

3 元素使用固定定位之后,会转化为行内块(不推荐,推荐使用display:inline-block;

原文地址:https://www.cnblogs.com/liujianing/p/9735273.html