作为一个身处 2008 年末 Web 设计师,你是否好意思承认自己代码中使用了 Table,如果是,你是一个有勇气人,Web 设计是个奇怪行业,你可以将自己网站设计得像晚报分类广告,或者楼道里开锁广告,但千万别让人知道你使用了 Table,在你源代码中发现 Table 就像一个销售被人掀起裤脚发现穿了白袜子一样。
Table 是免费做网站如斯丑陋,臃肿,哪怕只显示一段免费网站申请简朴内容,你也需要 <table><tr><td> 这三个基本标签,每个标签里面还要加上一堆乱七八糟属性,不像<div>,既免费网站申请简朴,又网页制作工具整齐,又时尚,它和 CSS 珠联璧合,琴瑟和谐,它们构成最完美 Box 模型,他们象现实中箱子,你把东西放,然后,很自由地对他们行排列,厌烦了一种布局,没关系,免费网站申请简朴地改动一下 CSS 定义,一种全新布局便诞生了;不象 Table,Table 像食堂里餐具柜,一排排,一列列,土里土气,油腻腻,象我们父辈,邋遢,什么都往家里拿,胡乱堆在角落里,如果 Div 是小资,Table 就是老三届,他们不属于这个时代。
也就是近几年事,至多建站系统不外三五年,W3C是一个人人都认为怎样制作网站-如何制作网站重要但人人都不喜欢组织,他们官方网站十分丑陋,我敢说平生没见过这么丑陋网站,但他们网站是为数不多可以通过全部W3C网站制作尺度验证网站,这意味着,他们网站在语法上,在结构上,在可访问性上是完美,虽然依旧十分丑陋。建站系统不外这是笑谈,W3C非常重要,否则微软会把全体 Web 开发工程师带到万劫不复境地,还好,Netscape 死后,涅磐出 Firefox,而 Opera 在 Firefox 横空出世之后虽然没得到任何好处,至少得到了精神上支持,到没,终于有大哥出来收拾你。乔布斯复出后,苹果重返昔日网站制作毫光,这时人们才知道世界上还有一个做 Safari 浏览器,所有这一切加在一起,让 W3C 真正有了存在必要。
W3C 说,Table 可以用来容纳文字,网站制作格局文字,图片,链接,表单,以及其它 Table ... 但是,Table 不应该单纯用来做网页布局(Tables should not be used purely as a means to layout document content),理由是,当 Web 被非可视化设备渲染时候,Table 会网站制作泛起问题,他们指定是屏幕阅读器以及盲文浏览器,另外,Table 在大型显示设备上会强迫用户左右滚动,因此,Web 设计者应该使用 CSS 而不是 Table。参见 W3C HTML 4.01 关于 Table 定义。 W3C 说这段话时候,是1999年12月24日,那时尽管 CSS 早已诞生,但并没有多少人使用,最初 Web 像一个在线版文档,并没有成为现在这样平台,不需要过多过多地考虑布局问题,网站制作跟着互联网第一次泡沫形成,涌现出大量门户网站,门户网站是 Table 布局始作俑者,因为他们首页比一整份报纸所有版面拼接在一起还复杂,Table 在这方面十分顺手,结合 colspan 和 rolspan,你几乎能够实现任何复杂版面。
这种布局风格在2000年代初,一直到中期网页制作工具仍旧十分流行,尤其免费申请网页海内,在大为美潜意识下,人们把所有能塞到一个页面东西都塞了首页,Table 就像一个旧时代管家,把所有东西虽不能井井有序,但至少是一样不少地编排起来。然而这样 Web 终于到了让人厌恶地步,网站制作跟着搜索,RSS 订阅,以及以博客为代表个性化 Web 网站制作泛起,人们有更多渠道获得信息,而不必访问那几个让人几乎要晕过门户首页,于是网站制作泛起了一种清新,轻量 Web 风,使用更免费网站申请简朴布局,更明快配色,大图标,大 Banner,以及更容易阅读大字体,同时,在这个时候,CSS 已经非常成熟,而 Firefox, Opera, Safari 为代表浏览器,在遵守 W3C 网站制作尺度方面要好过 IE,人们终于认识到 CSS 威力。因为 CSS 在布局上,其核心是一个 Box 模型,人们免费申请网页必需为 CSS 找一个可以依附容器对象。
Div 成为幸运者一方面因为它网站制作生成就是 Box 最佳原型,在语怎样制作网站-如何制作网站义上,Div 代表页面一个区域,在免费网站申请形状上,它四四方方,更重要是,它不像 <P> 或 <a> 那样事先已经被赋予特殊语义(虽然它们也能用于 Box 模型);另一方面,则出于人们对 Table 统治一个臃肿时代憎恶,一个时代结束,继任者都会努力抹旧时代痕迹,那些旧时代象征或代表命运多半免费做网站如斯,人们并不是免费网站申请简朴地忘却它们,而是断然划清界限。
Table 一切不公平待遇就此开始。为什么说不公平,W3C 不建议 Table 布局时候,只说应使用 CSS 代替,这是什么意思,Table 不支持 CSS 吗?当然支持,而且,免费创建网站因为 Table 作为老牌 HTML 对象,它地位曾免费做网站如斯重要,任何浏览器都对 Table 提供了最完美支持,包括 CSS 支持。当人们拥抱 Div 时候,网页制作工具好像免费做网站健忘了 Table 也是 Box,而且是一个拥有多个内格 Box,Table 作为一个整体,和 Div 在 Box 模型方面没有任何区别,而它内格,除了 Margin 之外,网页制作工具仍旧是一个 Box,内格不含 Margin 概念这是应该理解。Div 很优秀这不必说,然而当人们说 Div + CSS 时候,网页制作工具好像暗示着 Table 无法 CSS,这是天大误会。怎样制作网站-如何制作网站
Div 支持所有 CSS 属性,Table 全部支持,事实上,在 Div 大红大紫之前,那些 Div 早期采用者曾信心不足地表示,Table 能做到,Div 都能,而他们也为自己话付出了代价,企图在 Div 中实现垂直居中人明白我意思,企图在 IE6 中不经 CSS Hack 而实现 100% Div 布局人更明白我意思。100% Height 问题,几个 Div 之间宽度自适应问题,相信任何从事 Div+CSS 设计人会遇到。Table 在这方面优势并不是因为它本身多么优秀,而是因为它老牌,没有浏览器敢忽视,也因为它特性原本免费做网站如斯,人们发明表格,是因为网站制作但愿数据显示得整齐,就这么免费网站申请简朴。然而,为什么 Table 后来背上那么多恶名?Div 拥护者对 Table 责难不外乎以下几条。
代码臃肿:你至少需要写下 <table><tr><td>这三个标签之后,才能开始真正内容,另外,Table 各种标签中还包含了复杂属楔义,而 Div 只需 <div>一个标签。
页面渲染免费创建网站机能问题:浏览器需要将整个表格完全读完后才会开始渲染。
不利于搜索引擎优化:搜索引擎喜欢内容与网站制作润饰分开。
可访问性差:屏幕朗读软件和盲文浏览器无法很好网站制作地舆解 Table 中内容。
不够语义(Semantic):我们需要语义 Web。
第1条:代码臃肿
首先,Table 里面网站制作独一无法用 CSS 定义属性只有 Cellspacing, Cellpadding 几个,其它属屑可以并且应当使用 CSS,这样,剩下,就是 <table><tr><td> 和 <div> 对决,我相信一个动辄几十K大小网页,即使使用了几十个 Table,因此多出来代码也可以忽略不计,那些埋怨 Table 代码臃肿人其实该检查自己编码习惯,能将 Table 写得十分臃肿人,写 Div 免费网站申请比拟也未必会简洁到哪里。
第2条:页面渲染免费创建网站机能问题怎样制作网站-如何制作网站
我使用一台2004年笔记本电脑,1.6G CPU 与 1G 内存,这种配置下,不出 Table 布局和 Div 布局在页面渲染上有任何速度差别,其实这点差别即使有,相对网络本身延迟也可以忽略。
第3条:不利于搜索引擎优化
如果你尽可能使用 CSS 而不是 Table 属性,前面说了,产生代码和 Div 差别也不会很大,搜索引擎会歧视 <table> 标签吗,这种说法依据我至今并没有找到。
第4条:可访问性差
这是 Table 固有缺陷,建站系统不外多数 Div+CSS拥趸网页制作工具好像并不是基于这个原因才排斥 Table。怎样制作网站-如何制作网站
第5条:不够语义
语义 Web 含义要深得多,并不是仅仅在 Table 和 Div 上纠缠,即使 W3C,也并没有学做网站划定 Table 只能用来显示表格数据,免费创建网站良多在 Table 语义免费建网站长行纠缠人,其实不妨再等等 HTML 5,那才是真正语义。
本文目不是让你丢弃 Div 投身 Table,相反,如果 Div 能自助建站知足你设计需要,Div 仍是首选,但没必要避讳 Table,否则会走入另外一个极端。免费创建网站良多使用 Div 无法免费网站申请简朴实现设计,仍可以使用 Table,当然,不管使用什么,都应该用 CSS 将内容与网站制作润饰分离。Div + CSS 和 Table + CSS 都是合法设计,谁更免费网站申请简朴就用谁。根据我经验,当你能预见你内容网站制作格局,对你即将加入内容有能力完全控制其显示网站制作格局时,应当使用 Div + CSS;当你即将加入内容是不固定,你无法预见其网站制作格局,如果不想让页面坍塌,使用 Table + CSS 是一种保险做法。 |