1px vs瘦,IE vs Excel问题

我有一个HTML表格,在IE和Excel(用于报告)

如果我将边框宽度设置得较薄,则会在IE中显示2px边框,并在Excel中显示1px边框。

但是,如果我将它设置为1px,它在IE中显示一个1px边框,在Excel(???)中显示一个2px边框。

我怎么能让他们都显示1px边框,因为它看起来可怕的2px边框。

将一个excel文件保存为html生成CSS如下所示:

.xl32 {mso-style-parent:style0; border-top:.5pt solid windowtext; border-right:1.0pt solid windowtext; border-bottom:1.0pt solid windowtext; border-left:.5pt solid windowtext;} 

.5显示为正常线,1.0为粗线所以我想设置为.5pt应该工作…

我不知道在Excel中呈现的HTML表格。 我很好奇,如果它使用IE渲染引擎,或者一些自定义渲染引擎。 (这听起来像它可能会使用一个自定义的,基于差异。)

你可以尝试的一件事是将边框设置为“瘦”,然后在条件IE语句中有一个单独的CSS规则。 有关IE条件的更多信息,请参阅QuirksMode.org 。

所以可能是:

 <style> table { border: thin solid black; } </style> <!--[if lt IE 9]> <style> table { border: 1px solid black; } </style> <![endif]--> 

看看是否有效… 未经testing

将主CSS设置为thin以便Excel报告具有1px border ,然后使用条件注释将IE定位到1px border

 <!--[if IE]> //style rule for `border:1px` etc. <![endif]--> 

设置边框变薄。 并添加

 border-collapse: collapse; 

到你的声明。 应该修复IE中的2px问题