定位包括:相对定位,绝对定位,固定定位

一、相对定位(position:relative)

  1、相对元素自己原来的位置进行定位;不脱离文档流,元素在文档中占得始终是原来的位置

  2.特性:

    a、不影响元素本身的特性;

    b、不使元素脱离文档流(元素移动之后原始位置会被保留);

    c、如果没有定位偏移量,对元素本身没有任何影响;

    d、提升层级

  3.定位元素位置控制:top/right/bottom/left

    left:正值   向右移动         负值  向左移动

    top:正值  向下移动  负值  向上移动

    right:正值  向左移动  负值  向右移动

    bottom:正值  向上移动  负值  向下移动

    (同时设置left和right,以left为准;同时设置top和bottom,以top为准)

二、绝对定位(position:absolute)

  1、相对元素自己原来的位置进行定位;脱离文档流,元素在文档中不占任何位置

  2、特性:

    a、使元素完全脱离文档流;

    b、使内嵌支持宽高;

    c、块属性标签内容撑开宽度;

    d、如果有定位父级相对于定位父级发生偏移,没有定位父级相对于document发生偏移;

    e、相对定位一般都是配合绝对定位元素使用

    f、提升层级

  3、z-index:【number】:定位层级

    a、定位元素默认后者层级高于前者;

    b、建议在兄弟标签之间比较层级;

    c、不在同一父级标签下的标签,比较层级是没有意义的

    (1.改变定位元素(在z方向上)的堆叠顺序,数值大的元素堆叠在数值小的元素上面,设置了z-index值的元素层级会比没有设置的元素层级高。2、如果两个定位元素的z-index值相等,那么按照布局顺序,后布局的元素高于先布局的元素。)

三、固定定位(position:fixed)

  1、与绝对定位的特性基本一致,差别是始终相对整个文档进行定位;(IE6不支持固定定位);

四、定位其他值

  1、position:static;默认值

  2、position:inherit;从父元素继承定位属性的值(不兼容)

五、定位清浮动方法、遮罩滤镜

  1、position:absolute;绝对定位元素子级的浮动可以不用写清浮动方法;

  2、position:fixed;固定定位元素子级的浮动可以不用写清浮动方法(IE6不兼容)

  3、遮罩弹窗(优酷弹窗)

    a、标准 不透明:opacity:0~1;

    b、IE滤镜:filter:alpha(opacity=0~100);

六、定位兼容问题

  1、position:relative;在IE6/7下的父级overflow:hidden;包不住子级的relative;

  2、position:absolute;在IE6下定位元素的父级宽高都为奇数那么在IE6下定位的right和bottom都有1px的偏差。