定位

110 阅读1分钟

相对定位(relative)

  1. 元素开启相对定位后,如果不设置偏移量元素不会发生任何变化
  2. 相对定位是参照于元素在文档流中的位置进行定位的
  3. 相对定位会提升元素的层级
  4. 相对定位不会使元素脱离文档流
  5. 相对定位不会改变元素的性质,块还是块,行内还是行内

绝对定位(absolute)

  1. 开启绝对定位后,如果不设置偏移量元素不会发生任何变化
  2. 绝对定位元素会脱离文档流
  3. 绝对定位改变元素性质,行内变成块,块的宽高被内容撑开
  4. 绝对定位提升元素层级
  5. 绝对定位元素是相对于其包含块进行定位的
包含块(containing block)
  • 正常情况下:包含块就是离当前元素最近的祖先元素
  • 绝对定位的包含块:包含块就是离它最近的开启了定位的祖先元素,如果所有的祖先元素都没有开启定位则根元素就是它的包含块
  • html(根元素、初始包含块)

固定定位(fixed)

  • 固定定位也是一种绝对定位,所以大部分特点和绝对定位一样,唯一不同的是固定定位永远参照于浏览器的视口进行定位,固定定位的元素不会随网页的滚动条滚动