1

这让我很头疼,请有人帮忙吗?我创建了一个站点,可以在 Ie9 + 10 和所有其他浏览器中使用,但是动画菜单在 IE8 中不起作用,并且有人使用它来查看该站点。

这是CSS:

.menu, .menu ul, .menu li, .menu a {
    margin: 0;
    padding: 0;
    border: none;
    outline: none;
}

.menu {
    height: 40px;
    width: 800px;
    background: #f7d000;
    background: -webkit-linear-gradient(top, #f7d000 0%,#f7d000 100%);
    background: -moz-linear-gradient(top, #f7d000 0%,#f7d000100%);
    background: -o-linear-gradient(top, #f7d000 0%,#f7d000 100%);
    background: -ms-linear-gradient(top, #f7d000 0%,#f7d000 100%);
    background: linear-gradient(top, #f7d000 0%,#f7d000 100%);
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}

.menu li {
    position: relative;
    list-style: none;
    float: left;
    display: block;
    height: 50px;
}

.menu li a {
    display: block;
    padding: 0 14px;
    margin: 5px 0;
    line-height: 28px;
    text-decoration: none;
    font-family: 'Titillium Web', sans-serif;
    font-weight: bold;
    font-size: 15px;
    color: #000000;
    -webkit-transition: color .2s ease-in-out;
    -moz-transition: color .2s ease-in-out;
    -o-transition: color .2s ease-in-out;
    -ms-transition: color .2s ease-in-out;
    transition: color .2s ease-in-out;
}

.menu li:first-child a {
    border-left: none;
}

.menu li:last-child a {
    border-right: none;
}

.menu li:hover > a {
    color: #ffffff;
}

.menu ul {
    position: absolute;
    top: 40px;
    left: 0;
    z-index: 999;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    background: #f7d000;
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    -webkit-transition: opacity .25s ease .1s;
    -moz-transition: opacity .25s ease .1s;
    -o-transition: opacity .25s ease .1s;
    -ms-transition: opacity .25s ease .1s;
    transition: opacity .25s ease .1s;
}

.menu li:hover > ul {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.menu ul li {
    height: 0;
    overflow: visible;
    padding: 0;
    -webkit-transition: height .25s ease .1s;
    -moz-transition: height .25s ease .1s;
    -o-transition: height .25s ease .1s;
    -ms-transition: height .25s ease .1s;
    transition: height .25s ease .1s;
}

.menu li:hover > ul li {
    height: 36px;
    overflow: visible;
    padding: 0;
}

.menu ul li a {
    width: 180px;
    padding: 8px 10px;
    margin: 0;
    border: none;
    border-bottom: 1px solid #f7d000;
}

.menu ul li:last-child a {
    border: none;
}

该网站是:www.softwaretestingawards.com 任何帮助将不胜感激!

4

3 回答 3

3

IE8 不支持 CSS3 动画。

请参阅此参考: http ://caniuse.com/#search=css%20tran


许多人想考虑使用 javascript 动画,例如jQuery.animate

http://api.jquery.com/animate/

于 2013-05-02T08:57:54.257 回答
0

它在 Internet Explorer 8 中不起作用的原因是它不支持 CSS3 动画。我建议您编写一个脚本来检测是否正在使用 Internet Explorer 8,如果是,请动态更改网站,使其没有花哨的 CSS3 动画。

于 2013-09-29T06:50:29.627 回答
0

要在 IE8 中使用 css,您可以尝试使用 PIE.htc,如果您想要 http://css3pie.com/demos/,请参阅此站点以获取解决方案和演示,实际上它对我有用 :)

于 2014-07-16T10:24:02.977 回答