IE不支持一些CSS3样式

时间:2013-08-23 15:06:22

标签: internet-explorer

我遇到IE问题。我在我当前的项目中使用了一些css3样式。在所有其他浏览器上,我已经在Firefox,Chrome和Safari上测试了它,它看起来很棒。但在IE上,它看起来像我的房间(看起来不太好)。

我需要一些建议。我知道今天IE用户的百分比与其他浏览器相比非常低。我的问题是我应该将我的css3重写为标准CSS,特别是对于不支持IE的那些,或者我应该惹恼它,并且只是使用PHP来提醒用户,由于浏览器的类型,包含可能看起来不正确并建议它们下载,chrome还是firefox?

其中一个问题的示例是导航栏。

<nav>
    <ul>    
    <li>
    <a href="">Home</a>
    </li>                   
<li><a href="about.php">AboutUs</a></li>                        
<li><a href="contact.php">Contact Us</a></li>                   
    </ul>   
</nav>

CSS

nav{
text-align:center;
}
nav li{
text-align:center;list-style: none;
   float: left;
}
nav ul ul {
    display: none;
}

    nav ul li:hover > ul {
        display: block;
    }
    nav ul {
    z-index:50;
    background: #FFFFFF; 
    background: linear-gradient(top, #FFFFFF 0%, #bbbbbb 100%);  
    background: -moz-linear-gradient(top, #FFFFFF 0%, #bbbbbb 100%); 
    background: -webkit-linear-gradient(top, #FFFFFF 0%,#bbbbbb 100%); 
    box-shadow: 0px 0px 9px rgba(0,0,0,0.15);
    padding: 0 20px;
    border-radius: 10px;  
    list-style: none;
    position: relative;
    display: inline-table;
}
    nav ul:after {
        content: ""; clear: both; display: block;
    }

    nav ul li:hover {
        background: linear-gradient(top, #FFFFFF 0%, #FFFFFF 40%);
        background: -moz-linear-gradient(top, #FFFFFF 0%, #FFFFFF 40%);
        background: -webkit-linear-gradient(top, #FFFFFF 0%,#FFFFFF 40%);
    }
        nav ul li:hover a {
            color: #fff;

        }

    nav ul li a {
        display: block; 
        padding: 10px 10px;
        text-transform: uppercase;
        text-decoration: none;
    }
    nav ul li {
    float: left;
}

        nav ul li:hover a {
            color: #760076;
        }

    nav ul li a {
        display: block;
        color: #000000;
        text-decoration: none;
    }
    nav ul ul {
    border-radius: 0px; padding: 0;
    position: absolute; 
    top: 100%;
}
    nav ul ul li {
        float: none; 
        border-top: 1px solid #6b727c;
        border-bottom: 1px solid #575f6a;
        position: relative;
    }
        nav ul ul li a {
            color: #fff;
        }   
            nav ul ul li a:hover {
                background: #FFFFFF;
            }
            nav ul ul ul {
    position: absolute; 
    left: 100%; top:0;
}

1 个答案:

答案 0 :(得分:0)

例如对于IE9:

nav ul {
    :
  background: -ms-linear-gradient(to bottom, #FFFFFF 0%, #BBBBBB 100%);
    :
}

nav ul li:hover {
  background: -ms-linear-gradient(to bottom, #FFFFFF 0%, #FFFFFF 40%);
        :
}

IE10使用类似的规则,只有没有供应商前缀。