css定位详解

1.相对定位

【定位导读】

  1. 元素在移动位置的时候,是相对原来的位置来说的(自恋型,该元素所在的盒子内进行移动)

  2. 跟父亲元素和浏览器没有关系。

  3. 虽然这个盒子走了,他的位置继续占有,继续保留,不脱标。


【定位写法】

position: relative;
top: 300px;
left: 30px;
/*位偏移 top bottom left right*/


2.绝对定位

【定位导读】

  1. 元素移动位置时候,是相对祖先元素来说的。

  2. 如果没有父元素或者祖先元素没有定位(浮动也算),就以浏览器来对齐的。

  3. 如果父亲有定位(相对、绝对、固定定位),则以最近一级的祖先元素为参考点定位。

  4. 他爸爸没有定位,他爷爷有定位,他以爷爷来定位。

  5. 绝顶定位不占有原来的位置,轮播图采用的绝对定位。


【子绝父相】

  1. 子级使用绝对定位,父级则需要相对定位(top:0)

  2. 父亲必须保留位置,子盒子不需要保留位置


【定位写法】

position: absolute;
top: 30px;
left: 20px;
/*位偏移 top bottom left right*/


3.固定定位

【定位导读】

  1. 以浏览器的可视窗口来移动

  2. 和父元素有关系

  3. 不随着滚动条而滚动

  4. 不占有原来的位置


【固定写法】

position: fixed;
top: 300px;
right: 30px;
/*位偏移 top bottom left right*/


【右侧版心写法】

position: fixed;
left: 50%;
margin-left: 450px;
/*再移动盒子的宽的一半*/


4.粘性定位

【定位导读】

  1. 以浏览器的可视窗口为参照点,移动元素(固定定位的特点)

  2. 粘性定位占有原先的位置(相对定位的特点)

  3. 必须啊添加 top left right bottom 其中一个有效


【粘性定位写法】

position: sticky;
top: 0;
/*部分浏览器不兼容,可以使用js来做*/

营销型网站