Rumah >hujung hadapan web >html tutorial >求实现百度知道页面点登陆后出现背景灰色阴影后还能看到被覆盖的页面_html/css_WEB-ITnose

求实现百度知道页面点登陆后出现背景灰色阴影后还能看到被覆盖的页面_html/css_WEB-ITnose

WBOY
WBOYasal
2016-06-24 12:12:031054semak imbas

要求在css和js下解决不知有没可能??

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title><style>body{    margin: 0px;    padding: 0px;}#box{    margin-top: 500px;    margin-left: 200px;}#top{    margin-top: 100px;    margin-left: 300px;}#bottom{    margin-top: 1240px;    margin-left: 300px;}#sig{    height: 20px;    width: 90px;    margin-left: 100px;    margin-top: 100px;    background-color: #0066FF;    font-weight: bold;    color: #FFFFFF;}#ajax{    background-color: #CCCCCC;    position: absolute;    z-index: 9999;    left: 0px;    top: 0px;    right: 0px;    bottom: 0px;}</style></head><body><div onclick="ec()" id="sig">点击注册</div><div id="top">求这能看到(要求灰色背景在的前提下)</div><div id="box">求这能看到(要求灰色背景在的前提下)</div><div id="bottom">求这也能看到</div></body><script>function $(x){ return document.getElementById(x);}function ec() {if($('ajax')){$('ajax').parentNode.removeChild($('ajax'));}  var div = document.createElement("div")  div.setAttribute("id", "ajax");  div.style.height =document.body.clientHeight+"px"; //定位  div.style.width =document.body.clientWidth+"px";  document.body.appendChild(div);  $('ajax').innerHTML="<b>aaaaaaaaaaaaaaaa </b>"  }</script></html>


回复讨论(解决方案)

方法一
使用
opacity
filter
确实有遮罩的效果,即 页面的button click不能触发
产生的问题是, 遮罩层上的文字也会产生透明的效果

#ajax{    background-color: #CCCCCC;    position: absolute;    z-index: 9999;    left: 0px;    top: 0px;    right: 0px;    bottom: 0px;	opacity:.4;	filter:alpha(opacity=40);	}



方法2
使用  rgba + 渐变滤镜
ie下 遮罩不成功, button可以触发事件
但文字没有被影响为透明的。
#ajax{    background-color: #CCCCCC;    position: absolute;    z-index: 9999;    left: 0px;    top: 0px;    right: 0px;    bottom: 0px;	background-color:rgba(0,0,0,.4);	filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#4c000000', EndColorStr='#4c000000');}




可以用两个层来做,
弄个背景遮罩层,设置为透明,再弄个内容层,显示具体的内容。


  div.style.height =document.body.clientHeight+"px"; //定位
  div.style.width =document.body.clientWidth+"px";

   div.style.filter = "alpha(opacity=50)"; //IE
   div.style.opacity = ".50"; //chromeium

  document.body.appendChild(div);
  $('ajax').innerHTML="aaaaaaaaaaaaaaaa "

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn