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

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

WBOY
Libérer: 2016-06-24 12:12:03
original
1062 Les gens l'ont consulté

要求在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>
Copier après la connexion


回复讨论(解决方案)

方法一
使用
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);	}
Copier après la connexion



方法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');}
Copier après la connexion




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


  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 "

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal