指定dom元素的高度/宽度会使其渲染更快吗?

3
在从ExtJS3升级到ExtJS4的过程中,我们先前代码的一个具体实例不再起作用,即在使用renderTo将组件呈现到页面上的特定div时,但稍后在回调完成时更新innerHTML。我查看了生成的dom元素,在ExtJS3中未指定高度,但在ExtJS4中计算了初始高度并将其作为样式属性添加到div标记中。
我的问题是,指定DOM元素的高度会使渲染更快吗? (毕竟,ExtJS4应该是性能升级)它会因浏览器而异吗? 是否已经有任何基准数据可用?
顺便说一句,由于在ExtJS4中计算了初始高度,即使调用update()(更新innerHTML),组件也无法按预期呈现,因为计算的高度不再足够。解决方案是随后调用新的doComponentLayout方法(而不仅仅是doLayout)。

你打算如何“指定高度/宽度”? - Jared Farrish
@JaredFarrish,我认为应该遵循科学方法,类似于ExtJS4的方式:通过在div标签上指定它们作为样式属性来进行内联指定。 - Dexygen
好的。除非你正在尝试某些特定的东西并且在实践中“不起作用”,我的想法是“尝试一些东西,如果不起作用,尝试其他东西”。设置元素的“高度”和“宽度”会更“快”吗?我不知道,这取决于应用程序和相关代码。 - Jared Farrish
2个回答

1
理论上,如果您指定了宽度,那么应该会更快,因为框架不需要计算宽度。
实际上,您需要遵循特定组件的代码,并找出实际计算尺寸所需的工作量。

1

正如Chao所建议的那样,从理论上讲速度更快。

但是在Web开发中,您必须考虑用户的屏幕尺寸可能与您的不同,这意味着在不同的屏幕分辨率下可能会看起来有些奇怪。


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