css position定位 relative, absolute

193 阅读1分钟

CSS定位是一种CSS属性,可以用于指定一个元素在其父元素中的位置。CSS定位有以下几种类型:

image.png

  1. 静态定位(static):这是默认的定位方式,元素在文档流中按照其在HTML中的位置进行布局。
  2. 相对定位(relative):元素相对于其正常位置进行定位,可以通过top、bottom、left和right属性指定相对偏移量。
  3. 绝对定位(absolute):元素相对于最近的已定位祖先元素进行定位,如果没有已定位的祖先元素,则相对于文档的初始包含块进行定位。
  4. 固定定位(fixed):元素相对于视口进行定位,不会随着页面滚动而移动。
  5. 粘性定位(sticky):元素在到达某个阈值时变为固定定位,否则为相对定位。

demo 链接

jsbin.com/kodenobecu/…

relative 相对自身定位

image.png 绿色框是默认position:static, 默认的位置

image.png .item2 position:relative 此时相对于原来绿框的位置定位

absolute 相对祖先定位元素定位

image.png 相对于最近的已定位祖先元素进行定位,如果没有已定位的祖先元素,则相对于文档的初始包含块进行定位。

使用

给元素定位, 通常给定位使用 absolute,且给它的父元素为 relative(不会有影响)