本文實(shí)例講述了js+CSS實(shí)現(xiàn)彈出一個(gè)全屏灰黑色透明遮罩效果的方法。分享給大家供大家參考。具體分析如下:
在眾多的網(wǎng)站都有這樣的效果,當(dāng)進(jìn)行一定的操作之后,會(huì)彈出一個(gè)灰黑色的半透明的遮罩,在上面可以操作指定的內(nèi)容,例如可以彈出一個(gè)登陸框之類的內(nèi)容,下面就介紹一下如何實(shí)現(xiàn)此種效果,代碼實(shí)例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://m.survivalescaperooms.com/" />
<title>CSS如何實(shí)現(xiàn)彈出一個(gè)全屏灰黑色透明遮罩效果-武林網(wǎng)</title>
<style type="text/css">
*
{
margin:0px;
padding:0px;
}
.zhezhao
{
width:100%;
height:100%;
background-color:#000;
filter:alpha(opacity=50);
-moz-opacity:0.5;
opacity:0.5;
position:absolute;
left:0px;
top:0px;
display:none;
z-index:1000;
}
.login
{
width:280px;
height:180px;
position:absolute;
top:200px;
left:50%;
background-color:#000;
margin-left:-140px;
display:none;
z-index:1500;
}
.content
{
margin-top:50px;
color:red;
line-height:200px;
height:200px;
text-align:center;
}
</style>
<script type="text/javascript">
window.onload=function()
{
var zhezhao=document.getElementById("zhezhao");
var login=document.getElementById("login");
var bt=document.getElementById("bt");
var btclose=document.getElementById("btclose");
bt.onclick=function()
{
zhezhao.style.display="block";
login.style.display="block";
}
btclose.onclick=function()
{
zhezhao.style.display="none";
login.style.display="none";
}
}
</script>
</head>
<body>
<div class="zhezhao" id="zhezhao"></div>
<div class="login" id="login"><button id="btclose">點(diǎn)擊關(guān)閉</button></div>
<div class="content">武林網(wǎng)歡迎您,<button id="bt">點(diǎn)擊彈出遮罩</button></div>
</body>
</html>
以上實(shí)現(xiàn)了基本的遮罩功能,當(dāng)點(diǎn)擊彈出遮罩,會(huì)彈出一個(gè)對(duì)象,當(dāng)點(diǎn)擊關(guān)閉,遮罩效果消失。下面介紹一下如何實(shí)現(xiàn)次效果:
實(shí)現(xiàn)原理:
創(chuàng)建一個(gè)滿屏的div,使用絕對(duì)定位,這樣的話它就可以脫離文檔流,對(duì)其他的元素不會(huì)產(chǎn)生影響,并且將其設(shè)置為半透明狀態(tài),當(dāng)然這個(gè)透明度可以隨便調(diào)的,同時(shí)創(chuàng)建一個(gè)login元素,它也使用絕對(duì)定位,并將其z-index屬性值大于面屏的div,這個(gè)時(shí)候它就不會(huì)被滿屏div遮蓋。在默認(rèn)狀態(tài)下這兩個(gè)div的display屬性值是none。當(dāng)點(diǎn)擊相應(yīng)的按鈕可以更改他們的display屬性值。
建議:盡可能的手寫(xiě)代碼,可以有效的提高學(xué)習(xí)效率和深度。
希望本文所述對(duì)大家的web程序設(shè)計(jì)有所幫助。