css3 transform导致子元素固定定位变成绝对定位的方法
程序员文章站
2022-04-06 11:32:55
这篇文章主要介绍了css3 transform导致子元素固定定位变成绝对定位的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编... 20-03-06...
本文介绍了css3 transform导致子元素固定定位变成绝对定位的方法,分享给大家,也给我自己留个笔记,方便查找。
<!doctype html> <html> <head> <style> body { background: #f60; // 橙色 } .parent { position: fixed; width: 300px; height: 300px; right: 0; top: 0; background: #02bd00; // 绿色 transform: translatex(0); } .child { position: fixed; left: 0; right: 0; top: 0; bottom: 0; background: rgba(0,0,0,0.2); // 黑色透明:蒙层 } </style> </head> <body> <div class="parent"> <div class="child"></div> </div> </body> </html>
问题相对于没有遇到过的同学不太容易查找原因。贴个图看下效果(只有绿色部分有蒙层,但我们可能以为自己的写法没有问题。)
其实我们想要的子元素全屏效果,需要设置transform: none;
问题比较典型:父级元素设置有效的transform属性会导致子元素固定变成绝对元素, 此时会导致子元素和父级元素相同大小. 此时查看子元素的offsettop和offsetleft都是0,需要引起注意。
出现场景: 通常会在框架ui的基础上自定义增加样式时候出现。
到此这篇关于css3 transform导致子元素固定定位变成绝对定位的方法的文章就介绍到这了,更多相关css3 transform 子元素固定内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!