似乎普遍认为表不应该用于HTML中的布局.
为什么?
我从来没有(或很少诚实地)看到这方面的好论据.通常的答案是:
将内容与布局分开是件好事
但这是一个错误的论点; 陈词滥调.我想使用表格元素进行布局与表格数据几乎没有关系.所以呢?我的老板在乎吗?我的用户在乎吗?
也许我或我的开发人员必须维护一个网页关注......一个表不易维护吗?我认为使用表比使用div和CSS 更容易.
顺便说一下...为什么使用div或span将内容与布局和表格分开?只使用div来获得一个好的布局通常需要很多嵌套的div.
代码的可读性
我认为这是另一种方式.大多数人都懂HTML,很少有人理解CSS.
SEO最好不要使用表格
为什么?任何人都可以证明它是有证据的吗?或谷歌发表的声明表示,从SEO的角度来看,表格是不受欢迎的?
表格较慢.
必须插入额外的tbody元素.这是现代网络浏览器的花生.向我展示一些基准,其中使用表会显着减慢页面的速度.
如果没有桌子,布局检修会更容易,请参阅css Zen Garden.
大多数需要升级的网站也需要新内容(HTML).新版本的网站只需要新的CSS文件的情况不太可能发生.Zen Garden是一个不错的网站,但有点理论上.更不用说它滥用 CSS了.
我真的对使用divs + CSS而不是表格的好参数感兴趣.
我有一个HTML表单,如:
<html>
Name:<input type="text"/></br>
Email Address:<input type="text"/></br>
Description of the input value:<input type="text"/></br>
</html>
Run Code Online (Sandbox Code Playgroud)
现在标签都在同一列中开始,但文本框根据标签的文本长度以不同的位置开始.
有没有办法对齐输入字段,使得所有":"和文本框将从相同的位置开始,前面的文本将右对齐,直到":"?
我可以使用CSS,如果这可以帮助实现这一点.
HTML =>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div style='border: 1px solid red; width: 100px;'>
<a href="#">foo</a>
<a href="#"style="border-color: blue; float: right;">bar</a>
</div>
something
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我遇到了IE7的问题(不需要IE6支持)
在IE7上渲染的html看起来像这样=>
alt text http://i48.tinypic.com/saxs9d.jpg
我需要它看起来像这样(目前在chrome/ie8上工作)=>
alt text http://i49.tinypic.com/2ufgbr4.jpg
我应该改变什么?:)
我有一个表格,左边的标签和右边的字段.当标签包含少量文本时,此布局非常有用.我可以轻松地min-width在标签上设置一个标签,以确保它们与字段的距离相同.在下面的第一张图片中,这可以按预期工作.当标签的文字变得太长时会出现问题,它会溢出到下一行或者将同一条线上的字段推到左边(如图2所示).
这并没有推动其他标签,因此它留下了"锯齿状"外观.理想情况下,它应该像下面的标记那样将它设置为图片3的样式:
<fieldset>
<label>Name</label><input type="text" /><br />
<label>Username</label><input type="text" />
</fieldset>
Run Code Online (Sandbox Code Playgroud)
我创建了一个jsFiddle来显示问题.

当然,解决这个问题的简单的跨浏览器方式是使用表格.这只会为那些应该如此简单的东西创造标签.注意:这并没有需要支持IE6.