持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第23天,点击查看活动详情
fixed定位(返回顶部按钮就是使用这个属性制作的)
-
属性值:fixed,固定的意思
-
参考元素:浏览器窗口
-
参考点:浏览器窗口的四个顶点,跟偏移量组合方向有关
-
由于浏览器窗口的四个顶点位置不会发生变化,会导致固定定位的元素会始终显示在定位位置
-
性质:固定定位的元素脱离标准流,让出标准流位置,可以设置宽高,根据偏移量属性可以任意设置在浏览器窗口的位置。固定定位的元素会始终显示在浏览器窗口上
-
定位的应用:
-
水平居中:定位的元素如果想在参考元素中居中显示,有自己的居中方法:
-
第一步:在居中的方向使用一个偏移量属性,例如left,设置属性值为50%,导致图片的左顶点移动到参考元素的中心位置
-
第二步:给绝对定位的子盒子设置一个同方向的margin,例如margin-left,属性值为负的自身宽度的一半;因为这种方法可能会计算不好,导致出现错误,可以使用transform: translate(-50%)也可以达到同样的效果
-
注意:不论子盒子的宽度是否比参考元素更宽,都能使用以上方法进行居中设置
-
-
-
扩展应用:
-
解决标准流中,宽的子盒子在窄的父盒子中的居中,可以设置大的子盒子相对定位,利用相对定位居中的方法进行居中
-
浮动的元素居中,在不改变原始浮动状态情况下,可以利用相对定位居中方法
-
默认压盖顺序:
- 定位的元素不区分定位类型,都会去压盖标准流或浮动的元素。如果都是定位的元素,在HTML中后写的定位会压盖先写的
-
自定义压盖顺序:
- 如果想更改定位的元素的压盖顺序,可以设置一个z-index属性
- 属性值:数字
-
注意事项:
-
属性值大的会压盖属性值小的,设置z-index属性的会压盖没有设置的
-
如果属性值相同,比较HTML书写顺序,后写的压盖先写的
-
z-index属性只能设置给定位的元素才会生效,如果给没有定位的元素设置,不会生效
-
父子盒模型中,如果父子盒子都进行了定位,与其他的父子级有压盖的部分:父级盒子:如果不设置z-index,后写的压盖先写的;如果设置了z-index,值大的压盖值小的。子级盒子:如果父级没有设置z-index属性,子级z-index大的会压盖小的;如果父级设置了z-index值,无论子级值是多少,都是父级的值大的子级压盖父级值小的子级,俗称“从父效应”
-
-