我无法在html excel文件中设置宽度,然后在excel中打开它。
当使用主流浏览器查看时,宽度在html中完美运行,但是当加载到excel中时,我看到一个很大的断开连接。
我与其他设计师交谈,他们说要在excel中使用网络预览技术,但这也不起作用。另一个人建议使用col标签并设置属性宽度,样式宽度和样式mso交替宽度。还有人建议使用span,并将表格宽度与td宽度的总和相匹配,这在excel中也不起作用,但它们似乎在所有浏览器中都很好用。
有多个表格,每个表格都已根据宽度和高度进行了自定义。
此外,我试图将所有内容放在一个表下,并且只设置宽度的第一行,这也是无效的。我应该切换到pdf。
谢谢, 马克
答案 0 :(得分:1)
我能够通过在excel中加载文件,手动调整所有列和高度,重新保存到html,然后将文件重新显示为html,然后将文件加载到excel中来解决此问题。由于我的原始html具有某些css样式,我不得不重新应用它们,但格式宽度和高度是完美的。
这种技术唯一真正的问题是它可能需要花费大量时间才能以您想要的方式在html中获取格式。我可能更快地保存xml,然后从xml转换为html。
答案 1 :(得分:1)
仅供参考,我遇到了同样的问题 - 无法将宽度强制为HTML格式的第一列保存为XLS。我也在使用<td width="123">
。
实际上,我能够将列大小设置为更大的值,如50px或100px,但无法将其设置为低于某个最小阈值25-30px(我需要1px)。
事实证明,造成这种混淆的原因是所使用的HTML文件的内容上还有另一个标记 - 当我删除它时,只剩下一个标记开始运行良好。
答案 2 :(得分:1)
如果您需要生成格式良好的Excel文件。 html excel文件可能是一个糟糕的选择。
我的最终选择是:使用HtmlAgilityPack将html加载到DocumentNode树,使用POI根据节点树创建行和单元格。