【发布时间】:2010-12-30 16:58:30
【问题描述】:
网上的一切都让我停止使用表格,我已经尽力做到这一点,但我遇到了一个问题,表格似乎是唯一的解决方案。我有 5 个内联块元素,我希望它们在 100% 的页面宽度上均匀分布。我在样式上设置了 20% 的宽度,并将边距和填充设置为零。当我查看页面时,除了添加到页面的水平滚动条之外,一切看起来都很好。如果我将这些元素放在一个 100% 宽度的 5 列表格中,这不是问题。在这种情况下,我需要使用表格还是有更好的解决方案?
顺便说一句,我在 Chrome 和 IE8 中都试过了。
更新:我发现在我的元素之间插入了约 5px 的间隙(通过在它们上放置背景颜色来发现)。我不知道为什么,因为我的风格中没有任何东西表明这一点:
<div class="links">
<a href="#">Previous</a>
<a href="#">Current</a>
<a href="#">Next</a>
<a href="#">01/01/2011</a>
<a href="#">01/08/2011</a>
</div>
.链接 { 空白:nowrap; 宽度:100%; }
.links { 显示:内联块; 宽度:20%; 填充:0; 边距:0; 白颜色; 背景颜色:#4C8331; }
另一个更新:
在 JMC Creative 指出我在几乎解决问题的锚之间放置空格的愚蠢错误之后,但现在滚动条只有一个像素。我看不出应该导致这种情况的继承样式。
【问题讨论】:
-
这是一个 hack,但您可以将每个框设置为 19.5% 并将 '.links' 边距设置为 0 auto,这将使其在页面上居中。
-
看起来 1px 滚动可能是 IE 独有的问题?在 Chrome 和 BlackBerry 浏览器中没有滚动条。
-
您可以简单地在 css 中设置 `overflow:hidden `,或者使其成为 IE 唯一规则(请参阅下面我编辑的答案)
标签: html css tablelayout