缩放浏览器时,Ext.js 4.2 tabpanel标头和正文放错了位置

时间:2020-04-29 06:30:33

标签: extjs html-table

不仅仅是放大,还要放大。

正常:
enter image description here

放大:
enter image description here

放大:
enter image description here

当有很多列时,他非常明显。那有什么好的技巧吗?

1 个答案:

答案 0 :(得分:1)

这里是link

我要在sencha论坛中提及此用户的话,对此我表示同意。

这是Chrome中的一个错误,可以在ExtJS框架之外重现。

如果在浏览器中加载以下HTML代码,则单元格将对齐。如果您使用浏览器缩放,则不会。

在缩放后,以像素为单位的单元格宽度为浮点(非整数)时,会发生此问题。 Chrome将前半部分的单元格宽度向下舍入,后半部分的单元格宽度向上舍入。

例如如果计算的宽度为24.3333px,则列的前三分之二为24px,列的后三分之一为25px。因此,如果我们有54列,那么在第36列处,我们会偏离12像素,即半个列。

ExtJS框架无法针对此错误采取任何措施,除非Sencha知道一种在缩放后计算宽度的方法。我不确定是否可以使用javascript获取浏览器的缩放级别。但是,我坚信这是Chromium团队必须解决的问题。

我认为仍然可以通过CSS实现解决方法。如果可以,请尝试使用flex属性在网格配置中对列进行网格化。计算flex为=(给定列宽/所有列宽的总和),并删除列级的“ width”配置。

在更改布局后,Flex实际上会在其CSS属性中设置每一列的宽度。