【发布时间】:2010-09-19 20:24:57
【问题描述】:
我已经知道:“不要使用 css 表达式!”我的问题不在于我是否应该使用表达式或是否有替代方法;我的问题很简单:我能否在不使用条件 cmets 的情况下仅在 IE 版本 7 之前的版本中评估 css 表达式?
我偶尔会使用下划线技巧来隐藏 IE7 的规则,但 IE7 似乎无论如何都会评估表达式。例如,_width:700px; 会被 IE7 忽略,但 _width:expression('700px'); 仍会被计算。
我知道有人会试图告诉我只使用条件注释来包含规则,但我正在寻找一种方法来做到这一点,而无需将单个样式规则放入单独的文件中。
给那些仍然不想放手的人的注意事项:我选择了使用 css 表达式,但我没有轻率地这样做。我理解其中的含义,并且我使用的表达式只计算一次。别再担心我的错误决定了,只要回答这个问题...... ;-)
【问题讨论】:
-
既然你一直在期待它......表达式是一个坏主意,依赖解析错误更糟糕。也就是说,从 navigator.appVersion 中解析版本并将其存储在某处,然后在您的表达式中检查它。愿上帝怜悯你的灵魂……
标签: html css internet-explorer