项目里需要做一个在容器内全屏的功能,screenfull不满足,他只能浏览器全屏(可能是我不会用,求大神指导)。最后用固定/绝对定位做的手动全屏。结果位置定位有问题,看了半天发现是上上…上级有transform影响了。在transform不为none的元素中,定位是会受到影响的。找了好多解决办法:
1、父元素及其祖先元素如果使用了transform,则使用fixed定位将会失效,某些效果的实现可以使用sticky来代替。(我试了没生效)
2、同样在被影响的元素上做transform。(试了有用,但是这个位置的计算我把控不了,不适用我的项目)
3、最后决定剑走偏锋,在不影响布局的情况下,可以直接把要定位的元素移动到body下。上代码:
这样完美解决了fixed失效的问题。
by the way插一句,我想要在某个div内全屏,于是用了注释掉的那行代码,结果报了一个错,求解。