9年前关闭的
在HTML中,表不应该用于布局,这似乎是一种普遍的观点
为什么?
我从未(或者说实话,很少)看到有好的论据支持这一点。通常的答案是:
-
将内容与布局分开是好的,但这是一个错误的论点;陈词滥调的思维。我想,将表格元素用于布局与表格数据没有多大关系是真的。那又怎样?我的老板在乎吗?我的用户在乎吗?
也许我或我的同事开发人员必须维护一个网页,他们关心的是一个没有表格的maintai可启用?我认为使用表比使用div和CSS更容易。
顺便问一下……为什么使用div或span可以很好地将内容从布局中分离出来,而不使用表呢?要获得仅使用div的良好布局通常需要大量嵌套div
-
代码的可读性
我认为情况正好相反。大多数人理解HTML,很少人理解CSS -
搜索引擎优化最好不要使用表格
为什么?有人能提供一些证据证明这一点吗?或者谷歌声明从搜索引擎优化的角度来看不鼓励使用表格 -
表的速度较慢。
必须插入一个额外的tbody元素。这对于现代web浏览器来说是微不足道的。请给出一些使用表会显著降低页面速度的基准测试 -
没有表格,布局调整更容易,请参见css Zen Garden。
大多数需要升级的网站也需要新内容(HTML)。网站的新版本只需要新的css文件的情况不太可能出现。Zen Garden是一个不错的网站,但有点理论性。更不用说它对css的滥用了
我对使用divs+CSS代替表的好参数非常感兴趣
我将一个接一个地检查你们的论点,并试图指出其中的错误
将内容和布局分开是很好的
但这是一个错误的论点;陈词滥调
这一点也不谬误,因为HTML是故意设计的。误用元素可能不是完全不可能的(毕竟,其他语言中也出现了新的习惯用法)但是,必须平衡可能的负面影响。此外,即使今天没有反对误用<;table>;元素的论据,但由于浏览器供应商对该元素进行特殊处理的方式,明天可能会有。毕竟,他们知道这一点“<;table>;元素仅用于表格数据”,并可能利用这一事实来改进渲染引擎,在这个过程中巧妙地改变<;table>;的行为,从而打破以前被误用的情况
那又怎样?我的老板在乎吗?我的用户在乎吗
视情况而定。你的老板头发尖吗?那么他可能不在乎。如果她有能力,那么她会在乎,因为用户会在乎
也许是我或我的开发伙伴,他们必须维护一个网页护理…表是不是不易维护?我认为使用表比使用div和css更容易
大多数专业web开发人员似乎都反对您[需要引用]。表实际上不易维护这一点应该是显而易见的。使用表进行布局意味着更改公司布局实际上意味着更改每一页。这可能非常昂贵。另一方面,明智地使用语义有意义的HTML与CSS相结合可能会将此类更改限制在他使用CSS和图片
顺便问一下,为什么使用div或span不能很好地将内容与布局和表分开?要获得一个只有div的良好布局通常需要大量嵌套div
深度嵌套的<;div>;s与表格布局一样,是一种反模式。优秀的网页设计师不需要太多的深度嵌套div。另一方面,即使如此深度嵌套的div也没有表格布局的许多问题。事实上,它们甚至可以通过逻辑地将内容划分为多个部分来形成语义结构
代码的可读性
我认为情况正好相反。大多数人理解html,很少理解css。它更简单
“大多数人”不重要。专业人士很重要。对于专业人士来说,表格布局比HTML+CSS产生更多的问题。这就像说我不应该使用GVim或Emacs,因为记事本对大多数人来说更简单。或者我不应该使用LaTeX,因为MS Word对大多数人来说更简单
SEO最好不要使用表
我不知道这是不是真的,也不会用它作为论据,但这是合乎逻辑的。搜索引擎搜索相关的数据。虽然表格数据当然可能是相关的,但它很少是用户搜索的。用户搜索页面标题或类似突出位置中使用的术语。因此,排除这些术语是合乎逻辑的从过滤中获得大量内容,从而大大缩短了处理时间(和成本!)
桌子慢一些。
必须插入一个额外的tbody元素。这对于现代web浏览器来说是微不足道的
额外的元素与表的速度变慢无关。另一方面,表的布局算法要困难得多,浏览器通常必须等待整个表加载后才能开始布局内容。此外,布局缓存不起作用(CSS可以轻松缓存).这一切以前都提到过
显示一些基准测试,其中使用表会显著降低页面速度
不幸的是,我没有任何基准数据。我自己也会对它感兴趣,因为这个论点缺乏一定的科学严谨性是正确的
大多数需要升级的网站也需要新的内容(html)。网站的新版本只需要新的css文件的情况不太可能出现
一点也不。我已经研究了一些改变设计的例子,通过内容和设计的分离来简化。它经常需要改变一些HTML代码,但是变化总是更受限的。另外,设计变更必须动态地进行。考虑模板引擎,比如W所使用的模板引擎。ordPress博客系统。表格布局会彻底摧毁这个系统。我为一个商业软件做过类似的工作。能够在不更改HTML代码的情况下更改设计是业务需求之一
另一件事。表格布局使网站自动解析(屏幕抓取)更难的是。这听起来可能很琐碎,因为毕竟是谁做的?我自己也很惊讶。如果相关服务不提供web服务来访问其数据,屏幕抓取会有很大帮助。我在生物信息学工作,这是一个悲惨的现实。现代web技术和web服务还没有达到大多数开发人员和用户的要求第十,屏幕抓取是自动化获取数据过程的唯一方法。难怪许多生物学家仍然手动执行这样的任务。用于数千个数据集