我有一个包含标题和表单的div。
它漂浮在其他元素上,我想使它的背景透明。
我无法弄清楚如何在保持输入字段的同时使背景透明,并且文字完全不透明。
我尝试了以下内容:
var control = $("myControlDiv");
control .show();
control .setStyle({opacity:"0.60", filter:"alpha(opacity=60)"});
var children = control .childElements;
for (var i = 0 ; i < children.length; i++)
children[i].setStyle({opacity:"1.00", filter:"alpha(opacity=100)"});
感谢您的帮助。
答案 0 :(得分:2)
您需要设置背景,而不是不透明度。
您可以采取各种方法。效率更高的浏览器支持最差。本文介绍how to implement them in a backwards compatible fashion。
答案 1 :(得分:1)
嗯,对于IE以外的所有浏览器,您可以使用CSS 3 rgba,它设置颜色和alpha,但仅用于背景(当然,如果您在背景颜色上设置它)。例如,这就是CSS中60%透明的黑色背景颜色:
background-color:rgba(0,0,0,0.60);
对于IE来说它更复杂,但它有一个很好的指南: http://www.daltonlp.com/view/217
答案 2 :(得分:1)
创建一个透明度为60%(或多少)的单像素PNG。将其设置为背景图像。
答案 3 :(得分:0)
只需在表单周围设置一个div。
<div style="background:transparent;height:300px;width:300px;"></div>
答案 4 :(得分:0)
解决这个问题的方法是使外部div相对定位,内部div完全定位。这将允许内部div具有与外部div不同的不透明度。您可以查看以下链接和演示。
http://www.impressivewebs.com/css-opacity-that-doesnt-affect-child-elements/
演示页面 http://www.impressivewebs.com/demo-files/css-opacity/css-opacity-demo.html
答案 5 :(得分:-1)
你能做到这一点的唯一方法是:
a)使用CSS3,类似于Cokegod的帖子,这在人口统计等方面极为有限。
b)创建一个包含内容的div,将背景div放在其中并将不透明度设置应用于背景图层。由于不透明度/过滤器适用于整个元素,因此创建“背景”div可以应用不透明度并使容器保持不受影响。这有点痛苦,但它确实有效。
希望这有帮助。