Css IE bug-背景颜色和定位

Css IE bug-背景颜色和定位,css,internet-explorer,Css,Internet Explorer,我刚刚开始建立一个网站,并且正在充实css 两个问题: 我使用rgba来获得透明的背景,并使用一个透明的png来在旧浏览器中模拟这一点。我使用的是这样的级联: rule { background: url(/media/img/white_0.9_pixel.png); background: rgba(255, 255, 255, 0.9); } 在IE中,这些背景并没有涵盖他们应用到的所有部分。。。你知道为什么吗 下拉菜单在IE中的位置不正确。我完全是在定位它,但在Web

我刚刚开始建立一个网站,并且正在充实css

两个问题:

  • 我使用rgba来获得透明的背景,并使用一个透明的png来在旧浏览器中模拟这一点。我使用的是这样的级联:

    rule {
        background: url(/media/img/white_0.9_pixel.png);
        background: rgba(255, 255, 255, 0.9);
    }
    
  • 在IE中,这些背景并没有涵盖他们应用到的所有部分。。。你知道为什么吗

  • 下拉菜单在IE中的位置不正确。我完全是在定位它,但在Webkit中添加了一个边距将它推到正确的位置-猜测这是对齐下拉菜单的错误方式,并且它在浏览器中不起作用。有什么建议吗
  • 非常感谢-在这里写问题有助于我思考


    网站链接:

    哪些IE版本会出现问题

  • 与许多IE bug一样,尝试赋予具有不正确渲染背景的元素

  • 当您没有指定绝对定位元素的“left”属性时,IE很少生成您想要的值。根据CSS 2.1规范,“left”应该设置为,但是浏览器可以猜测这个位置,所以最好是显式的。标准方法是为菜单项提供相对定位,以便为每个子菜单创建一个相对位置,并为子菜单设置“顶部”和“左侧”

    .nav li {
        position: relative;
        /* note: don't set a box offset (e.g. "left") here */
    }
    .nav ul {
        position: absolute;
        top: 1em;
        left: 0;
    }
    

  • 您指定了背景重复吗?

    您尝试过css不透明度概念吗

    请尝试下面的代码

    rule {
    background: #fff;
    opacity: .5; 
    -moz-opacity: 0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /* for IE8 *//* Comes First to apply optacity in all ie versions*/
    filter: alpha(opacity=50); /* for IE5-7 *//* Comes second to apply opacity in all ie versions*/
    }
    
    注意:不要更改以上行的顺序。另外,我建议不要使用rgba背景

    试试这个。希望这有帮助