如何用JS或CSS来实现网页背景半透明

JavaScript014

如何用JS或CSS来实现网页背景半透明,第1张

你的图片跟第二个层在同一个层里,第二个层又是相对定位,当然不行了。

<style type="text/css">

.alpha{filter:alpha(opacity=30)width:400px}

</style>

<div width="1024" height="768">

<img src="C:\\webstudy\\Pic\\2.jpg" class="alpha"/>

</div>

<div style=" position:absoluteleft:0pxtop:0px">

<font color=red>asdfasdfd</font>

<br><br><br><br>sdfsdfsdfsdfsdf<br><br><br>

</div>

或者:

<style type="text/css">

.alpha{filter:alpha(opacity=30)width:400px}

</style>

<div style="position:relative" width="1024" height="768">

<img src="My Pictures/q-1.jpg" class="alpha"/>

<div style="position:absoluteleft:0pxtop:0px">

<font color=red>asdfasdfd</font>

<br><br><br><br>sdfsdfsdfsdfsdf<br><br><br>

</div>

</div>

<body>

........

<div id="mask"> 》》 遮罩层

<img src="" > 》》 图片

</div>

<script>

给你写个简单的实现原理

1.执行某个事件后,显示遮罩层和图片,获取可视区的宽高的宽高,并将可视区的宽高赋值给遮罩层的宽高(透明的样式在css中设置),

2.定位图片的位置,top = document.documentElement.clientWidth - oImg.offsetWidth)/2+'px'

left = (document.documentElement.clientHeight - oImg.offsetHeight)/2 + 'px'

</script>

</body>

如果你会Js,应该能看懂

//淡入效果(含淡入到指定透明度)    

function fadeIn(elem, speed, opacity){    

/*    

* 参数说明    

* elem==>需要淡入的元素    

* speed==>淡入速度,正整数(可选)    

* opacity==>淡入到指定的透明度,0~100(可选)    

*/    

   speed = speed || 20    

   opacity = opacity || 100    

//显示元素,并将元素值为0透明度(不可见)    

   elem.style.display = 'block'    

   iBase.SetOpacity(elem, 0)    

//初始化透明度变化值为0    

   var val = 0    

//循环将透明值以5递增,即淡入效果    

   (function(){    

       iBase.SetOpacity(elem, val)    

       val += 5    

       if (val <= opacity) {    

           setTimeout(arguments.callee, speed)    

       }    

   })()    

}    

    

//淡出效果(含淡出到指定透明度)    

function fadeOut(elem, speed, opacity){    

/*    

* 参数说明    

* elem==>需要淡入的元素    

* speed==>淡入速度,正整数(可选)    

* opacity==>淡入到指定的透明度,0~100(可选)    

*/    

   speed = speed || 20    

   opacity = opacity || 0    

   //初始化透明度变化值为0    

   var val = 100    

//循环将透明值以5递减,即淡出效果    

   (function(){    

       iBase.SetOpacity(elem, val)    

       val -= 5    

       if (val >= opacity) {    

           setTimeout(arguments.callee, speed)    

       }else if (val < 0) {    

//元素透明度为0后隐藏元素    

           elem.style.display = 'none'    

       }    

   })()    

}    

var btns = document.getElementById('demo')    

       

   btns.onclick = function(){    

       fadeIn(btns)    

   }    

   btns.onclick = function(){    

       fadeOut(btns,40)    

   }    

   

   <p id="demo" style="width:300pxheight:300pxbackground:#f00">淡入淡出</p>

试试吧