【发布时间】:2014-08-10 07:55:01
【问题描述】:
我有一个 CSS3 过渡,可以在悬停时在 div 内调整图像大小/位置。
这可以按预期工作,但我担心don't support CSS3 transitions 像IE9-这样的浏览器。是否有可能编写此 CSS 代码以便这些浏览器具有后备功能?
理想情况下,后备应该显示图像,使其适合 div 并且不缩放 (fiddle example) 并且悬停时没有动画。
我更喜欢纯 CSS 解决方案,而不是更改标记。
完整代码示例:
HTML:
<div><img src="http://lorempixel.com/output/people-q-c-1000-500-7.jpg" />
CSS:
div{
overflow:hidden;
width:500px;
height:250px;
position:relative;
}
img{
display:block;
position:absolute;
height:auto;
width:200%;
left:-30%;
top:-60%;
-webkit-transition-property: width, left, top;
-webkit-transition-duration: .8s;
-webkit-transition-timing-function: ease-out;
transition-property: width, left, top;
transition-duration: .8s;
transition-timing-function: ease-out;
}
div:hover img{
width:100%;
top:0;
left:0;
}
【问题讨论】:
-
@Jason:除了对转换的支持比
@supports广泛得多。 -
很难相信 IE9 不支持过渡,我从未在 IE9 上尝试过我的演示,但我记得我在caniuse 上查看过过渡功能,它报告说 IE9 确实支持过渡。也许我的记忆有误。关于您的问题,您想要的后备结果尚不清楚。您的意思是结果应该最初应用于图像还是悬停?
-
哦,对了..我还没有真正看过支持。那没关系。
-
@KingKing 这是我想避免的,我需要图像没有悬停效果,并使用例如
width:100%;height:auto为不支持过渡的浏览器显示图像。 -
@KingKing 我刚刚意识到我对 IE9 支持的 css 转换有这种感觉,因为我正在将它们与
transformIE9 支持的属性女巫混淆
标签: css css-transitions fallback