布局模型

布局模型

CSS包含3种基本的布局模型,用英文概括为:Flow、Layer 和 Float。在网页中,元素有三种布局模型:

  1. 流动模型(Flow)
  2. 浮动模型 (Float)
  3. 层模型(Layer)

流动模型

默认的网页布局模式

flow模型特征:

1.块状元素自上而下顺序分布,默认状态下,块状元素的宽度都为100%,以行的形式占据位置,霸道独占一行。
1.内联元素在所处的包含元素内从左到右水平分布

浮动模型

块状元素独占一行,让两个块状元素并排显示,可以使用浮动。

div{
	width:200px;
	height:200px;
    border:2px red solid;
	float:left;}

层模型

绝对定位(position: absolute)

将元素从文档流中拖出来,绝对定位元素不占文档流,忽略文档流的存在而浮在已有东西的上面
left、right、top、bottom属性相对于其最接近的一个具有定位属性的父包含块进行绝对定位,如果不存在这样的包含块,则相对于body元素,即相对于浏览器窗口

相对定位(position: relative)

通过left、right、top、bottom属性确定元素在正常文档流中的偏移位置。
它相对定位占文档流 ,所以定位不好它会覆盖已有的东西。

固定定位(position: fixed)

与absolute定位类型类似,但它的相对移动的坐标是视图(屏幕内的网页窗口)本身。
不会受文档流动影响,这与background-attachment:fixed;属性功能相同。

Relative与Absolute组合使用

相对于其它元素进行定位.
参照定位的元素必须是相对定位元素的前辈元素:


相对参照元素进行定位
//从上面代码可以看出box1是box2的父元素(父元素当然也是前辈元素了)。

参照定位的元素必须加入position:relative;

#box1{
width:200px;
height:200px;
position:relative;    //绝对
}

定位元素加入position:absolute,便可以使用top、bottom、left、right来进行偏移定位了。

#box2{    position:absolute;  //相对
top:20px;
left:30px;
}//这样box2就可以相对于父元素box1定位了(这里注意参照物就可以不是浏览器了,而可以自由设置了)。

盒模型

箱子装东西的模型。所有的块级元素都具备盒模型特点。

你可能感兴趣的:(布局模型)