即便书写 CSS 很简单,使用 CSS 来排版却真的需要一种和我们以往有些不同的思维方式。
我们排版时考虑的不是“这个东西放在这儿,那个东西放在那儿”,而是页面中信息的类别和信息的结构。
我们用
标记来标示最重要的头条;次一级的条目则用
来标记,以此类推;而段落则放在
标记中。
这就是我们称之为“结构标记”或“语义标记”的东西。
你的内容将不放在表格和表格元素中,取代它们的是 div 元素。还要给你的 div 元素安排一个 id 或 class,不过这是为了描述它们的内容或功能,而非它们的外观。
避免 ed 与
eakfast 标记
且想想为何你希望某个对象按特定的方式出现;它有什么含义?你的标记能够也必须表达意思,即便对于那些无法观看页面的人来说也是如此。语义性的标记使得你的页面对一切受众都更有亲和力,这还包括了搜索引擎。
当你把某个对象设为斜体时,大概要么就是想强调它,要么是想 引用某个书中标题吧? 如果是前者,应该用 ;如果是后者,其实得用 。
如果某个对象被标记为粗体,事实上它应该被标记的是, 。
如果你希望在某处添加一个换行,这大概是开始了一个新的开头。如果不是开头,会不会是某种在你的站点中出现过的class (类型)?在上面两种情况下,你都应该用 CSS 替换
。
.foo {display:block}
看看你的那些标记吧
一旦你分析好页面的结构,就可以着手揭开表象,分析你现在的页面代码中可以转换成结构化标记的那些地方。
* 作为一个完美主义者,消灭所有的 标记和间隔 GIF 吧!
* 同样的,一并搞定 和
标记。
* 去除表格中的那些外观标记 (bgcolor, background, 等等)。
* 把纯粹用来表示外观的那些 CSS 调用 (比如 ) 改成结构化的标记。
把描述外观的标记改为描述结构的标记
你可以使用“查找加替换”(或者正则表达式),不过最好的方法还是在浏览器里打开这个页面,然后把文本复制粘贴到你的 HTML 编辑器里。
关键还是要用结构化的方式来思考!仅仅把 标记替换为 是远远不够的。
最重要的条目是哪个?用
来标记它。次要一点的就用 ,依此类推。用
来标记段落。把导航条标记为无序列表。
选定一个 DOCTYPE 来使用。(我们推荐 XHTML transitional,除非你是此道高手,否则别用 XHTML strict。)
把你的页面合理分布在的 div 中
把你的主导航条放在一个 id 属性设为 mainnav 的 div 中,子导航条则放在一个 id 或者 class 是 subnav 的 div 中。而页脚类似这个形式:
选定一个 DOCTYPE 来使用。(我们推荐 XHTML transitional,除非你是此道高手,否则别用 XHTML strict。)
把你的页面合理分布在的 div 中
把你的主导航条放在一个 id 属性设为 mainnav 的 div 中,子导航条则放在一个 id 或者 class 是 subnav 的 div 中。而页脚类似这个形式: