【发布时间】:2011-10-28 18:05:16
【问题描述】:
这适用于 Chrome、Safari 和 Firefox,但不适用于 IE9
style='height:100'
IE9 只是忽略它。但这确实有效:
style='height:100px'
不幸的是,我真的不想在我的所有值中添加一个“px”。它使进行任何类型的操作(例如,将宽度乘以 2、将宽度加 100 等)都非常麻烦。这是预期的行为吗,我可以在某处设置任何特殊标志以使 IE9 接受第一个示例吗?
(我知道内联样式通常被认为非常糟糕,但我有理由在某些特殊情况下使用它们)
【问题讨论】:
-
您可能打算使用
100%,在这种情况下,所有这些浏览器都会出错。 CSS 确实要求您具体说明您的单位。 -
当您说“任何形式的操作都非常麻烦”时,您指的是 JavaScript,还是?
-
“任何类型”意味着任何东西。 Javascript,Python等。我给出的例子几乎总结了它。而不是 x = x * 2 我现在有 x = (parseInt(x) * 2) + "px",它的字符数大约是原来的两倍,有很多可爱的杂物掩盖了操作的目的,仅此而已周围恶心。 Python 会是类似的,除非我完全遗漏了什么?事实上,我根本看不出任何方式,任何形式的操作都不会非常麻烦,无论语言如何,操作是简单还是复杂,无论我是很少做还是经常做。
-
好吧,你要么忍受这些杂乱无章的东西,要么编写函数来抽象它。例如,使用jQuery 你可以使用
var x = $('#myDiv').width(); x = x * 2; $('#myDiv').width(x);。 -
除了三十点所说的,您还可以使用 jQuery 尺寸插件来帮助您 (bramstein.com/projects/jsizes)