绝对定位布局,通过设置position属性实现
position属性
拥有3种定位形式:1.静态定位 2.相对定位 3.绝对定位
4个属性值:static(静态定位),relative(相对定位) ,absolute(绝对定位) ,fixed(固定定位)(也属于绝对定位)
相对定位:
特点:
相对于自身原有位置进行偏移
仍处于标准文档流中
随即拥有偏移属性和z-index属性
绝对定位:
特点:
建立了以包含块为基准的定位
完全脱离了标准文档流 也就是说他对他的兄弟元素不再有任何影响的
随即拥有偏移属性和z-index属性
未设置偏移量时:无论是否存在已定位祖先元素(如果一个元素设置了绝对定位、相对定位或者固定定位,我们都说这个元素已经定位了。),都保持在元素初始位置
脱离标准文档流
设置偏移量时:偏移参照基准:
无已定位祖先元素:以<html>(元素的根元素)为偏移参照基准
有已定位的祖先元素:以离该元素最近的已经定位的祖先元素作为偏移参照基准
fixed 定位:
未设置偏移量时:
有已定位的祖先元素:以离该元素最近的已经定位的祖先元素作为偏移参照基准
无已定位祖先元素: 浏览器可视窗口为基准偏移.
设置偏移量时:
无论有无已定位祖先元素,都以浏览器可视窗口为基准偏移。
使用绝对定位实现横向两列布局:常用于一列固定宽度 ,另一列宽度自适应的情况
主要应用技能:
relative--父元素相对定位
absolute--自适应宽度元素绝对定位
注意:固定宽度的列一定要大于自适应宽度的列
如果一个元素没有设置宽度,这个元素设置了float或者绝对定位之后,元素的宽度随着内容的宽度变化而变化
在对元素进行固定定位设置时,如果希望本元素包含在其父元素内,则不需要对它设置偏移量:
此时,给它设置 left:0,就会相对浏览器可视窗口0像素,因此,不用设置left,保留它原有的右侧的位置。
笔记来自:http://www.imooc.com/learn/95