DIV+CSS神话
作为一个身处 2009年的 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 早已诞生,但
相关文档:
CSS Hack 是在标准 CSS 没办法兼容各浏览器显示效果时才会用上的补救方法,在各浏览器厂商解析 CSS 没有达成一致前,我们只能用这样的方法来完成这样的任务。网上你可能能搜索到一大堆的 CSS Hack,但是我今天发布的你可能并不都很了解,因为这些都是只针对单独一个浏览器的 CSS Hack。
为了向你展示这些 CSS Hack 是否正常� ......
输入框只有底框:
.box
{
border-style:none none solid none;
border-bottom-width:1px;
border-bottom-color:#999999;
}
表格
<table>
<tbody>
<tr><td></td></tr>
</tbody>
</table> ......
尽管人们期待屏幕显示技术有所改进,但CSS和HTML却只提供了少数的交互设计控制,而且还只是双向状态的而非渐进状态,如:一个链接只能是一种颜色或另一种颜色,文本域只能是一种尺寸或另一种尺寸,一幅照片要么透明要么不透明。没有从两种状态的之间的部分,即没有过渡。
这种不优雅的切换效果使很多页面让人感觉突兀。虽� ......
最简单的办法:假设你有两个颜色的CSS文件red.css,green.css,默认为红色的样式
<link rel="stylesheet" style="text/css" link="red.css" id="colorcss">
<input type="button" name="redcss" value='红色' onclick="javascript:document.getElementById('colorcss').href='red.css'">
<input type="butt ......
当DIV+CSS平地起惊雷突然出现在网页设计行业的时候,官方、民间无不推崇备至,仿佛Table设计的时代就要终结,马
上就要步入DIV+CSS的时代,不懂得DIV+CSS你都不好意思说你会网页设计,不知DIV+CSS你都不好意思说你是站长,你
要还是用TABLE来设计站点,无数鄙夷之光就投射而来。
然而DIV+CSS真的有这么神吗?该怎� ......