如何删除css背景透明?

时间:2010-06-24 07:13:28

标签: css background transparent

我不知道它是如何发生的,对于我的生活,我无法解决它。

我有一个使用display:none;

隐藏的div

当用户点击时,我设置display:block,显示一个新图层。

问题在于所有文本都是从它后面的图层中显示出来的......我如何强制后面的div没有透明度?

我的css中没有设置透明度或不透明度。

我显示的图层只有以下设置:

.display { 
    background: rgb(255, 255, 255) url(/template/mobile/images/dot.gif) repeat left top;
    display:none; 
    width: 250px; 
    height:100px; 
    border: 1px solid rgb(20, 20, 20);
    margin-left: -5px;
    margin-top: -100px;
    float: left;
    z-index: 999;

}

如你所见:  我尝试使用1px背景图像 - 仍然是透明的  我将背景颜色设置为白色 - 仍然是透明的  我已经尝试设置z-index,因此它在所有内容之上 - 仍然是透明的

我不知道它为什么以及如何阻止它?

注意:我已停用了实际网站,可以在以下网址进行测试时查看此代码:http://dev.cutmyhair.com.au/search_results.php?keyword=waverley 注意:此问题仅发生在网站的.mobi版本上(因此您需要在手机上或使用mobi模拟器查看)

3 个答案:

答案 0 :(得分:7)

我能够使用FF3和IE8重现这一点。

您需要将头寸设置为绝对或相对。

.display { 
    position: absolute;
    ...
}

.display {
    position: relative;
    ...
}

答案 1 :(得分:0)

您确定这是透明度问题吗?我看到另一个问题:

高度:100像素 margin-top:-100px

如果float属性受到周围其他元素的影响,那么这两个将使你的div完全不在页面之外。也许在这里发布html部分和其他相关的css规则,这样我就能更好地了解情况。无论如何,首先,通过使用像Firebug或Chrome开发控制台这样的好的html / css调试工具,确保你的div位于你认为的位置。

答案 2 :(得分:0)

尝试使用display:inline-block(而不是block)。它似乎对浮动元素更好(更直观)。