在网上看到一个,用js写的层的遮罩效果。和大家分享一下。
CSS样式,如下:
<style type="text/css"> .black_overlay { display: none; position: absolute; top: 0%; left: 0%; width: 100%; height: 100%; background-color: black; z-index: 1001; -moz-opacity: 0.8; opacity: .80; filter: alpha(opacity=80); } .white_content { display: none; position: absolute; top: 10%; left: 10%; width: 80%; height: 80%; border: 16px solid lightblue; background-color: white; z-index: 1002; overflow: auto; } .white_content_small { display: none; position: absolute; top: 20%; left: 30%; width: 40%; height: 50%; border: 16px solid lightblue; background-color: white; z-index: 1002; overflow: auto; } </style>
JS实现,如下:
<script type="text/javascript"> //弹出隐藏层 function ShowDiv(show_div, bg_div) { document.getElementById(show_div).style.display = 'block'; document.getElementById(bg_div).style.display = 'block'; var bgdiv = document.getElementById(bg_div); bgdiv.style.width = document.body.scrollWidth; // bgdiv.style.height = $(document).height(); $("#" + bg_div).height($(document).height()); }; //关闭弹出层 function CloseDiv(show_div, bg_div) { document.getElementById(show_div).style.display = 'none'; document.getElementById(bg_div).style.display = 'none'; }; </script>
HTML代码,如下:
<input id="Button1" type="button" value="点击弹出层" onclick="ShowDiv('MyDiv','fade')" /> <!--弹出层时背景层DIV--> <div id="fade" class="black_overlay"> </div> <div id="MyDiv" class="white_content"> <div style="text-align: right; cursor: default; height: 40px;"> <br /> <span style="font-size: 16px;" onclick="CloseDiv('MyDiv','fade')">关闭</span> </div> 遮罩层。 </div> <br /> <center> 层的遮罩效果</center>
运行效果,如下:
点击按钮,弹出层效果,如下:
但是,当有滚动条的时候,下面是遮不住的。。