父元素及其祖先元素如果使用了transform,则使用fixed定位将会失效,某些效果的实现可以使用sticky来代替。
回顾position定位:
static: 默认值,没有定位 (top,bottom,left,right,z-index声明无效;
relative: 相对定位,相对于自身正常位置定位;
absolute:绝对定位,相对于static定位以外的第一个父元素进行定位;
fixed: 固定定位,相对于浏览器窗口进行定位;
当时出现这种问题时,觉得好奇怪,后来发现是因为祖先元素有transform,所以使用fiexd无效,注释了transfrom就可以了,但是transfrom还很有用,不能注释,之后一直纠结于这种问题出现的缘故,以及如何解决,无果。后来又碰到这种问题时,无意间使用了position:sticky,发现它竟然完美解决了我的问题。小前端仍需继续努力哇