Web课程学习笔记--CSS-Position学习

CSS Position学习

CSS Position有四个属性:

  • relative
  • absolute
  • fixed
  • static(默认)

样例

<div id="parent">
	<div id="sub1">sub1div>
	<div id="sub2">sub2div>
div>

sub1和sub2是同级关系,parent是它们的父级元素。

relative(相对定位)

相对定位指的是相对于这个元素原位置的定位,且会占住原来的位置。

所谓原位置指不设置relative属性时它的位置(既static属性时的位置)

relative偏移相对的是margin的左上侧。

例如对sub1设置relative属性后,会根据top,right,bottom,left属性偏移,而sub2的位置不变(sub1会占住原来的位置)

Web课程学习笔记--CSS-Position学习_第1张图片

再对sub2设置relative属性,它也会相对其原来的位置偏移(sub2位置还会被占着)

Web课程学习笔记--CSS-Position学习_第2张图片

absolute(绝对定位)

绝对定位是根据其最近进行定位的父对象的 padding 的左上角进行定位,基本分为以下两种情况:

  • 例如对sub1设置absolute,如果sub1的父级元素(parent或者其父级元素)设置了absolute或relative,那么sub1就会相对这个父元素定位。

  • 如果父级元素都没有设置absolute或relative,那sub1相对body定位。

这时由于sub1的位置“腾出来了”,sub2就会跑到sub1的位置(也可以理解sub1浮起来了,dreamweaver中叫做层),它的文档流就会基于parent。

Web课程学习笔记--CSS-Position学习_第3张图片

如果再对sub2设置absolute,那其也是相对parent的。

Web课程学习笔记--CSS-Position学习_第4张图片

fixed

fixed是特殊的absolute,即fixed总是以body为定位对象的,按照浏览器的窗口进行定位。

static(默认)

position的默认值,一般不设置position属性时,会按照正常的文档流进行排列。

tatic(默认)

position的默认值,一般不设置position属性时,会按照正常的文档流进行排列。

本文转载自 小磊的博客,《CSS Position学习》

你可能感兴趣的:(Web学习笔记,前端,学习,笔记)