CSS3 PIE,IE8和border-radius

时间:2012-04-07 22:03:41

标签: css3

昨天我在寻找方法让IE8中的盒子阴影和边框半径工作时遇到了www.css3pie.com。到目前为止,它已经帮助了很多,但我正在努力弄清楚为什么它不适用于开发的最后一部分...顶部的两个标签。梯度显示在非活动状态,但在应用类“当前”时不变。 href也在改变它应该如何。请查看以下代码:

<div class="nav1">
        <ul>
        <li <?php if ($thisPage=="Contact Us") echo "class=\"current\""; ?>><a href="/contact.php">Contact Us</a></li>
        <li <?php if ($thisPage=="Visit Us") echo "class=\"current\""; ?>><a href="/visit-us.php">Visit Us</a></li>
        </ul>
        </div>

它的风格如此...

.nav1 ul {
margin:0px; 
padding:0px;
list-style:none;
}
.nav1 ul li { 
position: relative;
font-size:12px;
float:left;
margin-right:5px;
border: 1px solid #999999;
background-color: #fafafa;
border-radius: 5px 5px 0px 0px;
background: #f7f7f7; /* Old browsers */
background: -moz-linear-gradient(top, #f7f7f7 0%, #ccc9c9 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f7f7f7), color-stop(100%,#ccc9c9)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #f7f7f7 0%,#ccc9c9 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #f7f7f7 0%,#ccc9c9 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #f7f7f7 0%,#ccc9c9 100%); /* IE10+ */
background: linear-gradient(top, #f7f7f7 0%,#ccc9c9 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#ccc9c9',GradientType=0 ); /* IE6-9 */
color:#868686;
text-shadow: 1px 1px #fafafa;
padding: 6px 30px;
behavior: url(inc/PIE.htc);
}

li.current{ 
position: relative;
border-radius: 5px 5px 0px 0px;
background: #e0e0e0; /* Old browsers */
background: -moz-linear-gradient(top, #e0e0e0 0%, #bab8b8 100%); /* FF3.6+ */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#e0e0e0), color-stop(100%,#bab8b8)); /* Chrome,Safari4+ */
background: -webkit-linear-gradient(top, #e0e0e0 0%,#bab8b8 100%); /* Chrome10+,Safari5.1+ */
background: -o-linear-gradient(top, #e0e0e0 0%,#bab8b8 100%); /* Opera 11.10+ */
background: -ms-linear-gradient(top, #e0e0e0 0%,#bab8b8 100%); /* IE10+ */
background: linear-gradient(top, #e0e0e0 0%,#bab8b8 100%); /* W3C */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e0e0e0', endColorstr='#bab8b8',GradientType=0 ); /* IE6-9 */    text-shadow: 1px 1px #fafafa;
behavior: url(inc/PIE.htc);

}

.nav1 ul li a{ 
font-size:14px;
float:left;
color:#868686;
text-decoration:none;
}
.nav1 ul li a:hover{ 
color:#666666;
font-size:14px;
float:left;
color:#000000;
text-decoration:none;
}

.nav1 ul li.current a {
    color: #000;
}

1 个答案:

答案 0 :(得分:0)

由于CSS PIE将处理IE的渐变,您可以安全地删除filter:声明。这可能有所帮助。