【问题标题】:Artifacts on IE10 using CSS3 perspective transformIE10上使用CSS3透视变换的神器
【发布时间】:2013-10-03 15:10:48
【问题描述】:

我在 Internet Explorer 10 上使用 CSS 变换属性更改 3D 透视时遇到问题。

应用透视的元素中包含的某些元素的边缘出现随机伪影。

我创建了一个简单的小提琴来演示这个问题: http://jsfiddle.net/b9ztC/

要重现,只需打开小提琴并尝试选择、单击或播放文本,这会导致段落元素周围出现/消失以下伪影:

在更复杂的场景中会出现更多的行和伪影,原因似乎是下面这行css:

transform: perspective(800px);

解决问题的唯一方法似乎是:

  • 不将透视应用于元素
  • 将变换透视设置为0px
  • 使用perspective: 800px,而不是transform: perspective(800px)

最后一个似乎是一个简单的解决方案,但在某些情况下效果不佳,例如下面的 3D 翻转卡片演示(使用 IE10 的卡片背面有相同的伪影问题)无法正常播放将透视属性与旋转变换分开应用时:http://www.cssplay.co.uk/menu/css3-3d-card.html

有人遇到过这个问题吗?有什么办法可以防止这种情况发生吗?

我还想知道这是否发生在每台机器上,或者它可能是与硬件相关的问题。

【问题讨论】:

    标签: css internet-explorer-10 css-transforms artifacts


    【解决方案1】:

    我看到或多或少相同的问题,虽然只在 div 的左侧,但它会根据转换而变化。似乎是从线条边缘渗出的背景。

    我在 Windows 7 x64 上使用 Radeon HD 4670 (Catalyst 13.1),使用 IE 10.0.9200.16686 (KB2870699)。

    到目前为止,我发现的唯一实用的解决方法是在内部元素上应用填充,即在p 而不是div 上。但是我不确定填充是否真的是触发器,所以这可能不适用于其他情况。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多