网页中的半透明div

时间:2010-02-24 03:06:53

标签: javascript jquery css html transparency

嘿我正在开发一个网站,我希望显示一个半透明背景的div,以便可以看到页面背景。 我希望这适用于所有浏览器。 我很好用CSS,JS或jquery ...... 请给我建议,如果可能的话,请提供一些示例代码..

提前致谢, 拉吉

6 个答案:

答案 0 :(得分:8)

可能你最好的选择是使用纯CSS。此技术适用于Safari 3.2 +,IE 5.5 +,Firefox 3.05 +,Chrome 4+和Opera 10 +

div {
  /* black for browsers which cannot support rgba */
  background-color: #000;

  /* 70% opacity for supported browsers */
  background-color: rgba(0, 0, 0, 0.7);

  /* IE 5.5+ support #BB000000 is ~70% opacity on black */
  filter:progid:DXImageTransform.Microsoft.gradient(
    startColorstr=#BB000000, endColorstr=#BB000000
  );

  /* IE 8 support */
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(
    startColorstr=#BB000000, endColorstr=#BB000000
  )";
}

答案 1 :(得分:1)

对于CSS兼容的浏览器:Element.style.opacity =从0到1的十进制数 对于IE [aka,the devil]:element.style.filter =“alpha(opacity =”+(Number from 0-100)+“)”

示例:http://www.w3schools.com/Css/css_image_transparency.asp

请注意,div中的文本/内容也将变为半透明。

将div的不透明度设置为50%的示例:

var myElement = document.body.getElementById("elemId");
myElement.style.opacity = 0.5;
myElement.style.filter = "alpha(opacity=50)"; //For the devil, IE

顺便说一句,1 [或在IE的情况下,100]完全可见,而0是完全透明的。

希望有所帮助! ; - )

答案 2 :(得分:1)

如果您使用opacity 整个 div,包括文字,则将处于该不透明度级别。

如果您的访问者使用的是Webkit(Chrome,Safari)或Gecko(Firefox)浏览器(也可能是Presto(Opera),但我不确定)那么您可以使用:

#divToMakePartiallyOpaque {background-color: rgba(150,150,150,0.5); }

其中红色,绿色和蓝色通道设置为150,alpha设置为0.5(完全透明和完全不透明之间)。

如其他地方所述,还可以使用部分透明的背景图像。

答案 3 :(得分:0)

您也可以使用半透明的PNG。据我所知,IE 6不支持半透明,但我相信IE7 +和其他主流浏览器都有。

答案 4 :(得分:0)

如果您对jQuery解决方案没问题,以下内容适用于jQuery支持的所有浏览器(Firefox 2.0 +,Internet Explorer 6 +,Safari 3 +,Opera 9 +,Chrome 1 +):

$('div').css('opacity', 0.5);

答案 5 :(得分:0)

埃尔莫说:或

opacity= .5; 
filter:Alpha(opacity=50);  
background-color: rgba(0, 0, 0, 0.7);