我现在已经搜索了差不多半天了...但我找不到为什么chrome6/7似乎是与IE8/FF3.6/Opera相比唯一不添加填充到指定宽度的浏览器一个表格单元格的。
当然,如果您使用 table-layout:fixed,这变得至关重要,
因为他们突然必须注意指定的 px 宽度。
好吧,最后我的问题是:有谁知道为什么 Chrome 的计算方式不同,以及哪种浏览器是正确的(符合标准),希望有一个优雅的解决方案吗?
目前,我唯一的解决方案是使用 chrome.css 进行条件注释,其中我手动将填充添加到宽度......颤抖......
(顺便说一句:任何想告诉大家 px 宽度不适合网络开发的人......请随时安静地离开此页面)
添加:(关于回复)
首先感谢您的立即答复...我试图使其尽可能短,因此我将事实减少到最低限度...但是,正如您所提到的,网络开发中有很多变量所以我试图澄清...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4 /strict.dtd">
<html>
<head>
<style type="text/css">
div { width:300px; }
table { table-layout:fixed; width:100%; height:50px; }
td.col1 { width:20px; background-color:blue; }
td.col2 { width:40px; background-color:red; }
td.col3 { width:60px; background-color:yellow; }
td.col3 { width:auto; background-color:yellow; }
td { padding:5px; }
</style>
</head>
<body>
<div>
<table cellpadding="0" cellspacing="0">
<tr>
<td class="col1"></td>
<td class="col2"></td>
<td class="col3"></td>
<td class="col4"></td>
</tr>
</table>
</div>
</body>
现在如果你切换 css 行
td { padding:5px; }
在不同的浏览器中,您会看到 chrome 在宽度内包含填充,而其他浏览器则添加它
希望有助于澄清并提前致谢
berny
我有同样的问题,不幸的是,我没有找到真正的解决方案,但我发现了另外两个线程,一个错误报告+一个解决方法。
Threads:
表格布局:修复了 Safari 中的渲染差异
Webkit 浏览器在确定表格布局中的单元格宽度时不考虑填充:已修复
错误报告:
https://bugs.webkit.org/show_bug.cgi?id=13339
可能的解决方案:参见第二个线程。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)