CSS 翻译在 IE 10 的动画中没有正确的宽度

标签 css internet-explorer css-animations

我有一件古怪的事情要发生。我有一个盒子,里面有一个漂亮的小加载指示器。它像这样在盒子的整个宽度上动画:

@keyframes line-moving {
0% {transform: translate3d(-100%, 0, 0);}
40% {transform: translate3d(0, 0, 0);}
60% {transform: translate3d(0, 0, 0);}
100% {transform: translate3d(100%, 0, 0);}
}

很干净。你可以在这里看到它的实际效果:https://jsfiddle.net/hsmb1f7d/

但是,在 IE 10 上,动画的最后部分仅占框宽度的 20%,而不是 100%。我似乎无法弄清楚为什么。更多细节:

  • 动画不会被切断,因为它确实缓和了;所以这似乎是一个宽度计算问题。
  • 当我移除动画并在元素上设置 transform: translate3d(100%, 0, 0); 时,它确实获得了正确的宽度...

有没有人看到为什么它没有在动画中获得完整宽度?

最佳答案

“在转换为 0 的 2 个关键帧之间转换时,IE 10 似乎有一些奇怪的错误。”

解决方案是对两个关键帧使用几乎 0%。

在此处查看完整答案:translate3d between 0% and negative % in IE10

关于CSS 翻译在 IE 10 的动画中没有正确的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42552891/

相关文章:

css - 使用 CSS 设置子级 <div> 的父级 <div> 宽度

css - ie 中 Bootstrap css 中的 Topbar 输入问题

jquery - 带有 flash 的隐藏 DIV 不会用 jQuery 显示

css - div 中的 3d 立方体向后旋转文本

html - 如何消除网页上 iPhone 缺口处的空白

javascript - ASP.Net MVC4 返回带有目录列表的 html 页面而不是其内部 javascript 脚本文件

Css 'div overflow ' - 当我运行滚动时,div 跟随运动

html - Internet Explorer 中的 100% 高度问题

css - 带有图像的 Holo 微调器示例不起作用,而纯 CSS 可以

html - CSS 在不同事件期间多次转换为同一元素