700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > CSS3实现遮罩层效果

CSS3实现遮罩层效果

时间:2019-10-10 18:17:06

相关推荐

CSS3实现遮罩层效果

CSS3实现遮罩层效果

第一步、创建外层遮罩

先写个大盒子

<div id="box"></div>

再把盒子设置为固定定位,top、right、bottom、left都设置为0,并且不要设置宽高,这样子就实现大盒子铺满整个屏幕了,在设置个半透明背景颜色

#box{position: fixed;top: 0;right: 0;bottom: 0;left: 0;background-color: rgba(221, 221, 221, 0.5);}

效果就是这样子的

然后在大盒子里面写个小盒子装你的内容

<div id="box"><div><a href="javascript:void(0);">关闭</a></div></div>

设置下小盒子的css属性

#box div{width: 30%;height: 300px;position: absolute;top: 50%;left: 50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);padding: 20px;background: #ffffff;border-radius: 10px;text-align: right;}

再然后效果就是这样子的

这样子除了小盒子里面的内容外面的都是选不了的,再配合js控制遮罩层的显示与隐藏

实现鼠标穿透遮罩层,而不穿透内容

有时候需要实现鼠标能够对下层的内容进行操作的而遮罩层又不隐藏的情况,只需要给父元素加上:pointer-events: none;

然后在给遮罩层的小盒子加上pointer-events: auto;就可以实现效果了

最后代码

<!DOCTYPE html><html><head><meta charset="utf-8"><title></title><style type="text/css">#box{position: fixed;top: 0;right: 0;bottom: 0;left: 0;background-color: rgba(221, 221, 221, 0.5);pointer-events: none;}#box div{width: 30%;height: 300px;position: absolute;top: 50%;left: 50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);padding: 20px;background: #ffffff;border-radius: 10px;text-align: right;pointer-events: none;}</style></head><body><div id="box"><div><a href="javascript:void(0);">关闭</a></div></div></body></html>

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。