今天在写前端遮罩层时碰到一个问题,使用绝对定位给图片添加透明遮罩层时,遮罩层用width:100%,在IE6下不兼容,IE7+没问题,因为IE6下的这个100%不是针对父级容器,而是针对一个指定高度的祖先容器(高度不为auto的容器)。
解决办法是:给遮罩层父容器,即 position:relative; 的类名添加 overflow:hidden; 属性。
给遮罩层添加高度大于其父容器的高度,比如图片高度为400px,就在 height:100%; 之后 添加 _height:410px;
这样在IE6下就可以正常显示,因为超出的部分被隐藏起来。