Mozilla提供了他们的自动表格布局算法:
https://developer.mozilla.org/en/docs/Table_Layout_Strategy
有没有人在JavaScript库中见过类似的实现?
我想要做的是获取表格JSON数据,并以与HTML的自动表格布局类似的方式计算适当的列宽。我对让浏览器做布局,然后查看宽度等技巧不感兴趣,我想用JS从原始数据执行计算。
发布于 2013-05-08 06:20:25
如果不先将文本内容渲染到屏幕上,您就无法测量文本内容的宽度(因为您必须处理不同的屏幕分辨率、用户字体设置等)。
虽然有一个例外,但它并不完全准确。画布元素具有measure text dimensions的能力,但根据我的经验,它并不准确,因此不值得为获得不太准确的读取而预先呈现所有内容的麻烦/开销。
其他一些简单的技巧包括将内容的大小和字体显式设置为可预测宽度单间距字符字体,然后在内容换行/换行以适合容器大小的情况下计算string...but中快速分解的字符数。您还可以将文本“预先呈现”到DOM中的隐藏容器中(想一想display: hidden或z-index:-999),并以这种方式获得容器度量,但通常情况下,这会转移到大量的每列逻辑中,这些逻辑在以后的几个需求更改中就会变得笨拙。
https://stackoverflow.com/questions/16428295
复制相似问题