Evil villain mocking us

当然,CSS 总会有些事情做得不如表格好。

比如说你有个黑色的导航条,当你希望把它延伸到整个页面那么长的时候。 如果用表格,简单得很,给 <td> 一个黑色背景就行 了。

没错,我们可以用 CSS 完成这个,但需要一种不同的思维方式。

如果我们的导航条的 div 一个黑色的背景,那么黑色只会 延伸到导航内容结束为止。可在大部分页面中,内容总是比导航条长的, 这就不大好看了。

所以我们只好把一个黑色的 GIF 图片放在 div 里边,并 为 div 给足左侧的 padding,可一旦导航条比内容长的时 候,这又不好办了。

另一种“解决”的方式把黑色的 GIF 放在 <body> 的背景中 (而内容的 div 中设置别的背景颜色),这个方 法本是不错的,可万一你又想把 <body>. 的背景设 置成别的颜色,那就完蛋了。

或者我们可以把图片放在一个专门的“包裹” div 里。 然而这毕竟又把非语义性的麻烦引入了我们的标记中。

而且当然,在导航条的宽度是变动的时候如果要用小块图片拼成背景,CSS 肯定无法胜任。

就像我们前面说的,表格总有做得比 CSS 好的地方。但你总归应该问问自己, 表格带来的麻烦是否值得用它带来的那点利益来交换?

>
Scott Design