【问题标题】:why don't the colorzilla gradients work in IE?为什么 colorzilla 渐变在 IE 中不起作用?
【发布时间】:2011-12-10 05:35:57
【问题描述】:

我一直在使用 colorzila 工具来生成一些 css 渐变。它们适用于我为 IE9 测试的所有浏览器;其他的IE还没试过。 他们的 UI 上有一个 IE 复选框。当我将其设置为打开时,渐变样本不再具有渐变;它默认为基本纯色。

我认为它应该在 IE 中工作,因为它们确实包含以下 css 函数

filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#221f1f', endColorstr='#221f1f',GradientType=1 ); /* IE6-9 */

http://www.colorzilla.com/gradient-editor/#_

【问题讨论】:

    标签: internet-explorer css internet-explorer-9 gradient


    【解决方案1】:

    他们在css下面有一个按钮,叫做

    IE9 支持 (?)

    确保您检查遵循出现的说明。

    【讨论】:

    • 当时他们是不是添加了那个?一定是最近的。我正在按照说明进行操作,但它仍然无法在 IE9 中工作......显然我应该将过滤器属性设置为无。使用开发工具栏这样做会给我一个空白背景。它将背景图像属性设置为某个 url;一些 svg 图片,但它似乎是空的。
    • @towpse 在代码本身而不是开发工具栏中尝试它。看看有没有用?
    • 所以你需要将svg图像的代码放在引号中; colorzilla 工具现在没有做的事情。例如背景图像: url("数据:图像/svg+xml;base64,=")
    【解决方案2】:

    我建议放弃那些可怕的filter 样式。有一个更简单、更兼容的解决方案可用。 CSS3Pie 是一个允许 IE 使用标准 CSS 渐变语法的库。

    它比filter 更易于使用,并且在您的代码中也更易于维护。它适用于所有版本的 IE,此外,它还对一些其他 CSS 功能(例如 border-radius)执行相同的技巧。

    另外,我要指出你的代码 sn-p 中的注释是不正确的——你的 sn-p 说“IE6-9”,但实际上filter 样式在 IE9 中已经停止使用,赞成标准 CSS 语法。

    很遗憾,这对您来说是个问题,因为 IE9 也不支持标准 CSS 渐变。他们拿走了一些有用的东西(有点)并用......什么都没有(在这种情况下)。

    幸运的是,CSS3Pie 确实允许渐变,即使在 IE9 中也是如此,因此它可以解决您的问题。

    希望对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-17
      • 1970-01-01
      • 2013-06-11
      • 1970-01-01
      • 1970-01-01
      • 2011-09-23
      • 2011-08-15
      相关资源
      最近更新 更多