【问题标题】:Which browsers still support CSS expressions哪些浏览器仍然支持 CSS 表达式
【发布时间】:2011-04-18 03:37:26
【问题描述】:

来自博客:

CSS 表达式的基本思想是 你会有计算和 中属性的动态值 CSS代码,人们拥有的东西 发现非常有用。一个简单的例子 可以实现最大宽度行为 在 IE 6 中:

width: expression(document.body.clientWidth > 1100)? "1100px" : "auto";

这是我第一次读到它们。似乎 IE 曾经支持 CSS 表达式,但在 IE8 中删除了它们。还有哪些其他浏览器仍在使用它们?它们通常是好事还是坏事?

我从blog post 得到这个消息说替代方案是 Javascript,但我认为 CSS 更受支持,因此比 Javascript 更好。

【问题讨论】:

    标签: css internet-explorer css-expressions


    【解决方案1】:

    Firefox 有类似的设置,XBL - check out this answer to a very similar question。 HTML5 编辑 Ian Hickson 最近在 W3C 尝试标准化 XBL 的releasing a new draft 中引起了一些骚动(另请参阅the WG response),因此我们最终可能会看到类似于 Microsoft 的表达式作为 HTML5 技术家族的一部分。

    【讨论】:

    【解决方案2】:

    【讨论】:

    • 在 IE9 中,添加了来自真正标准化 CSS 规范的calc 来替代它,但是要如何让 IE8 在不使用 JavaScript 的情况下仍然支持这一点呢?
    【解决方案3】:

    AFAIK,它只有 IE6/7(也许)5。

    我从没想过它们是一件好事。还不如直接用JavaScript。

    它们实际上是用 JavaScript 实现的,我很确定禁用 JS 会禁用这些表达式。

    您发布的示例...

    width: expression(document.body.clientWidth >  1100)? "1100px" : "auto";
    

    ...只是一个三元运算符,表示如果宽度大于1100px,则设置为1100px,否则设置属性为auto

    最后,网络上没有比 JavaScript 更广泛支持的脚本语言了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-26
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-30
      相关资源
      最近更新 更多