CSS定位

268 阅读3分钟

CSS定位

1.1为什么需要定位?

1.浮动可以让多个盒子一行没有缝隙排列显示,经常是横向排列盒子.

2.定位则可以让盒子在某个盒子内移动位置或者固定屏幕中某个位置,并且可以压住其他盒子。

1.2定位组成

定位:将盒子定在某一位置,所以定位也是在摆放盒子,将按照定位的方式移动盒子。‘

定位=定位模式+边移量。

1.定位模式用于指定一个元素在文档中的定位方式,边偏移则决定钙元素的最终

1.定位模式决定元素的定位方式,它通过css的position属性,其值可以分为4个:

static 静态定位

realative 相对定位

absolute 绝对定位

fixed 固定定位

**2.边偏移 **

边偏移就是定位的盒子移动到最终位置,有top bottom left right四个属性。

top 顶端偏移量,定义元素相对于其父元素上边线的距离

bottom 底部偏移量 元素相对于其父元素下边线的距离。

left 左偏移量 定义元素相对于其父元素左边线的距离

right 右偏移量 定义元素相对于其父元素右边线的 距离。

1.3 静态定位(static了解)

语法:

{

选择器{postion : static;}

}

.静态定位按照标准流特性摆放位置,他没有边移量。

1.4相对定位(relative)

相对定位是元素在移动位置的时候,是相对于原来的位置来说得(自恋型)

语法:

{

选择器{position relative;}

}

相对定位的特征(务必记住):

1.它是对于自己原来的位置移动的(移动的位置参照点是自己原来来的位置)

2.原来在标准流的位置继续占有,后面的盒子仍以标准的方式来对待它(不脱标,继续保留原来的位置

1.5绝对定位(absolute重要)

绝对定位是元素在移动位置的时候,是相对于它祖先元素来说的(拼爹型)

语法:

{

选择器{position : absolute;}

}

绝对定位的特点:(务必记住):

1.如果没有祖先元素或者祖先元素没有定位,则以浏览器为准定位。

2.如果祖先元素有定位(相对、绝对、固定定位),则以最近一级有定位祖先元素为参考点移动位置

3.绝对定位不再占有原来的位置,而进行了漂浮(脱标)

1.6子绝父相的由来:

1.子级使用绝对定位,父级则需要相对定位。

2.父盒子需要加定位限制子盒子在父盒子内显示

3.父盒子布局时,需要占位置,因此父亲只能是相对定位。

总结:因为父级需要占位置,因此是相对定位,子盒子不需要占有位置,则是相对定位。

1.7固定定位fixed(重要)(特殊的绝对定位,脱硫)

固定定位是元素固定于浏览器可视区域的位置。主要使用场景:可以在浏览器页面滚动时元素的位置不会改变。

语法:

选择器{position:fixed;}

固定定位的特点:(务必记住)

1.以浏览器的可视窗口为参照点移动元素。

  • 跟父元素没有任何关系
  • 不随滚动条滚动

2.固定定位不占有原先的位置。

固定定位也是脱流的,其实固定定位也可以看作是一种特殊的绝对定位。

定位总结

定位模式 是否脱标 移 动位置 是否常用

static静态定位 否 不能使用边移量 很少

relative相对定位 否(占有位置) 相对于自身位置移动 常用

absolute绝对定位 是(不占有位置) 带有定位的父级 常用

fixed固定定位 是(不沾有位置) 浏览器可视区 常用

1.一定要记住相对定位,固定定位、绝对定位两个大的特点:1.是否占有原位置(脱标否)2.以谁为基准点移动位置。

2.学习定位重点学会子绝父用。