CSS布局技巧——定位 | 青训营

156 阅读3分钟

1-定位的应用场景介绍

  1. 可以解决盒子与盒子之间的层叠问题 -> 定位之后的元素层级最高,可以层叠在其他盒子上面
  2. 可以让盒子始终固定在屏幕中的某个位置

2-定位的基本使用步骤

1.设置定位方式

  • 属性名:position
  • 常见属性值:
定位方式属性值
静态定位static
相对定位relative
绝对定位absolution
固定定位fixed

2.设置偏移值

偏移值设置分为两个方向,水平和垂直方向各选一个使用即可

选取的原则一般是就近原则(离那边近用哪个)

方向属性名属性值含义
水平left数字+px距离左边的距离
水平right数字+px距离右边的距离
垂直top数字+px距离上边的距离
垂直bottom数字+px距离下边的距离

3-静态定位

介绍:静态定位是默认值,就是之前认识的标准流

代码:position:static;

注意点:

  1. 静态定位就是之前标准流,不能通过方位属性进行移动
  2. 之后说的定位不包括静态定位,一般特指后几种:相对、绝对、固定

4-相对定位

介绍:自恋型定位,相对于自己之前的位置进行移动

代码position:relative;

特点:

  1. 需要配合方位属性实现移动
  2. 相对于自己原来位置进行移动
  3. 在页面中占位置 ——> 没有脱标

应用场景:

  1. 配合绝对定位组CP(子绝父相)
  2. 用于小范围的移动

5-绝对定位的介绍

介绍:拼爹型定位,相对于非静态定位的父元素进行定位移动 代码position:absolute;

特点:

  1. 需要配合方位属性实现移动
  2. 默认相对于浏览器可视区进行移动
  3. 在页面中不占位置 ——> 已经脱标

应用场景:

  1. 配合绝对定位组CP(子绝父相)

子绝父相

含义:

  • 子元素:绝对定位
  • 父元素:相对定位

应用场景:让子元素相对于父元素进行自由移动

好处:父元素是相对定位,则对网页布局影响最小

6-固定定位

介绍:死心眼类型,相对于浏览器进行定位移动

代码position:fixed;

特点:

  1. 需要配合方位属性实现移动
  2. 相对于浏览器可视区域进行移动
  3. 在页面中不占位置 ——> 已经脱标

应用场景:

  1. 让盒子固定在屏幕中的某个位置

总结

序号语义脱标移动位置常用场景
1static静态定位不移动几乎不用不定位
2relative相对定位相对移动常用子绝父相
3absolute绝对定位带定位的父级常用子绝父相
4fixed固定定位浏览器可视区常用浏览器可视区
5sticky粘性定位浏览器可视区不常用浏览器可视区

7-定位元素的层级

标准流、浮动、定位元素之间的层级关系是什么样?

  • 标准流 < 浮动 < 定位

不同定位元素之间的层级关系是什么样?

  • 相对、绝对、固定默认层级相同
  • 此时HTML中写在下面的元素层级更高,会覆盖上面的元素

通过什么属性可以修改定位元素的层级?

  • z-index:数字;