定位

## 定位
- 更高级的布局方式.比浮动更加灵活
- 通过定位可以将元素摆放到页面中任意位置
- 定位分为三种: 相对定位. 绝对定位. 固定定位
- 通过position属性来设置元素的定位
    - static 默认值 没有开启定位
    - relative 开启相对定位
    - absolute 开启绝对定位
    - fixed 开启固定定位 
- 偏移量
    - 当元素开启定位以后,可以通过四个偏移量来设置元素位置
    - top 元素距离定位元素上边的偏移量
    - bottom 元素距离定位元素底部的偏移量
    - left 元素距离定位元素左侧的偏移量
    - right 元素距离定位元素右侧的偏移量
    - 一般偏移量只需要两个即可.一个水平方向,一个垂直方向
- 层级
    - 当元素开启定位以后会提升层级. 可通过z-index来设置元素层级
    - z-index需要一个正整数作为参数. 
    - 值越大层级越高.层级越高越优先显示
    - 层级一样靠后面的显示
    - 父元素永远都不会盖住子元素

#### 相对定位
- 当元素的position属性设置为relative就开启了相对定位
- 相对定位特点:
    1. 当给元素开启相对定位而不设置偏移量时,元素为不会发生改变
    2. 相对定位的元素是相对于元素自身在文档流中的位置进行定位
    3. 相对定位的元素不会脱离文档流.占据空间
    4. 相对定位不会改变元素的性质
    5. 相对定位会提升元素的层级

#### 绝对定位
- 当元素的position属性设置为absolute就开启了绝对定位
- 绝对定位特点:
    1. 绝对定位的元素会完全脱离文档流.不占据空间
    2. 绝对定位的元素会相对于**离它最近的开启了定位的祖先元素定位**. 如果祖先元素没有开启定位则以浏览器窗口定位
    3. 绝对定位会提升元素的层级
    4. 绝对定位会改变元素的性质. 内联元素变成块元素 

#### 固定定位
- 当元素的position属性设置为fixed就开启了固定定位
- 固定定位也是一种绝对定位. 大部分功能和绝对定位一致
- 固定定位的特点
    1. 固定定位永远相对于浏览器窗口定位 (隐藏整屏小广告链接)
    2. 固定定位的元素一旦定位则会固定在浏览器窗口中不动
    3. 固定定位元素不会随滚动条滚动

posted @ 2017-08-10 22:47  TTup*  阅读(175)  评论(0编辑  收藏  举报