CSS宽度和高度属性的最大像素值是多少?

39

CSS widthheight属性所接受的最大有效px值是多少?

(我正在构建一个非常大的可缩放容器元素的Web应用程序,我想知道实际限制是什么。)


1
它取决于UA - 没有一个单一的值可以依据。 - Adrift
@Adrift 请详细说明。 - Stas Bichenko
5
CSS理论上支持所有值类型的无限精度和无限范围,但实际上实现是有限的。用户代理应该支持合理有用的范围和精度。这意味着您需要为每个浏览器独立解决此问题。- 值和单位模块中的第4节。 - Adrift
1个回答

39

使用某些浏览器自带的CSS检查器,在具有10000000000像素宽度和高度的元素上:

Firefox: 33554400px
Chrome:  33554428px
Opera:   33554428px
IE 9:    21474836.47px

5
IE7说.... 134217727像素 <- 不,我没有错过小数点。使用http://jsfiddle.net/SQ7Lz/进行测试。 - colllin
1
MS Edge 报告 10737418.23px。 - Chris Seufert
很遗憾,你不能信任CSS检查器。例如,在IE11中,如果你将某个元素的高度设置为600万像素,检查器会报告它为-184070.03px;但是通过JavaScript,你可以看到它实际上是1533916.875px。这是在IE11和Edge中你可以通过CSS设置的最大高度。@colllin所展示的是,你可以通过在元素内部放置其他元素来使元素变得更大。我最近一直在研究这个问题:https://jsfiddle.net/JoolsCaesar/aczx25u4/8/ - Jools
此外,IE11和Edge完全无法解析@JamesDonnelly的jsfiddle中的CSS(10000000000px),因此它们只有18px的高度。不仅如此,对于各种值,例如IE可以报告的scrollHeight远低于它所拥有的值,因此您的scrollTop要大得多(可以在那个fiddle ^中看到)。 - Jools

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接