`

怎样过渡到W3C?

    博客分类:
  • HTML
阅读更多

我们大部分的设计师依旧在采用传统的表格布局、表现与结构混杂在一起的方式来建立网站。学习使用XHTML+CSS的方法需要一个过程,使现有网站符合网站标准也不可能一步到位。最好的方法是循序渐进,分阶段来逐步达到完全符合网站标准的目标。如果你是新手,或者对代码不是很熟悉,也可以采用遵循标准的编辑工具,例如Dreamweaver MX 2004,它是目前支持CSS标准最完善的工具。

1.初级改善

  • 为页面添加正确的DOCTYPE

很多设计师和开发者都不知道什么是DOCTYPE,DOCTYPE有什么用。DOCTYPE是document type的简写。主要用来说明你用的XHTML或者HTML是什么版本。浏览器根据你DOCTYPE定义的DTD(文档类型定义)来解释页面代码。所以,如果你不注意设置了错误的DOCTYPE,结果会让你大吃一惊。XHTML1.0提供了三种DOCTYPE可选择:

(1)过渡型(Transitional )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

(2)严格型(Strict )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

(3)框架型(Frameset )

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">

对于我们初级改善来说,只要选用过渡型的声明就可以了。它依然可以兼容你的表格布局、表现标识等,不至于让你觉得变化太大,难以掌握。

Tip:你懒得输入上面过渡型代码的话,可以访问http://www.macromedia.com/网站的首页,然后查看源代码,把head区同样的代码拷贝粘贴就可以了。

  • 设定一个名字空间(Namespace)

直接在DOCTYPE声明后面添加如下代码:

<html XMLns="http://www.w3.org/1999/xhtml" >

一个namespace是收集元素类型和属性名字的一个详细的DTD,namespace声明允许你通过一个在线地址指向来识别你的namespace。只要照样输入代码就可以。

  • 声明你的编码语言

为了被浏览器正确解释和通过标识校验,所有的XHTML文档都必须声明它们所使用的编码语言。代码如下:

<meta http-equiv="Content-Type" content="text/html; charset=GB2312" />

这里声明的编码语言是简体中文GB2312,你如果需要制作繁体内容,可以定义为BIG5。

  • 用小写字母书写所有的标签

XML对大小写是敏感的,所以,XHTML也是大小写有区别的。所有的XHTML元素和属性的名字都必须使用小写。否则你的文档将被W3C校验认为是无效的。例如下面的代码是不正确的:

<TITLE>公司简介</TITLE>

正确的写法是:

<title>公司简介</title> 同样的,<P>改成<p>,<B>改成<b>等等。这步转换很简单。

  • 为图片添加 alt 属性

为所有图片添加alt属性。alt属性指定了当图片不能显示的时候就显示供替换文本,这样做对正常用户可有可无,但对纯文本浏览器和使用屏幕阅读机的用户来说是至关重要的。只有添加了alt属性,代码才会被W3C正确性校验通过。注意的是我们要添加有意义的alt属性,象下面这样的写法毫无意义:

<img src="logo_unc_120x30.gif" alt="logo_unc_120x30.gif">

正确的写法:

<img src="logo_unc_120x30.gif" alt="UNC公司标志,点击返回首页">

  • 给所有属性值加引号

在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号。

例:height="100",而不能是height=100。

  • 关闭所有的标签

在XHTML中,每一个打开的标签都必须关闭。就象这样:

<p>每一个打开的标签都必须关闭。</p> <b>HTML可以接受不关闭的标,XHTML就不可以。</b>

这个规则可以避免HTML的混乱和麻烦。举例来说:如果你不关闭图像标签,在一些浏览器中就可能出现CSS显示问题。用这种方法能确保页面和你设计的一样显示。需要说明的是:空标签也要关闭,在标签尾部使用一个正斜杠"/"来关闭它们自己。例如:

<br /> <img src="webstandards.gif" />

经过上述七个规则处理后,页面就基本符合XHTML1.0的要求。但我们还需要校验一下是否真的符合标准了。我们可以利用W3C提供免费校验服务(http://validator.w3.org/)。发现错误后逐个修改。在后面的资源列表中我们也提供了其他校验服务和对校验进行指导的网址,可以作为W3C校验的补充。当最后通过了XHTML验证,恭喜你已经向网站标准迈出了一大步。不是想象中的那么难吧!

2.中级改善

接下来我们的改善主要在结构和表现相分离上,这一步不象第一步那么容易实现,我们需要观念上的转变,以及对CSS2技术的学习和运用。但学习任何新知识都需要花点时间的,不是吗?诀窍在于边做边学。假如你一直采用表格布局,根本没用过 CSS,也不必急于跟表格布局说再见,你可以先用样式表代替 font 标签。随着你学到的越多,你能做的就越多。好,一起来看看我们需要做哪些事:

  • 用CSS定义元素外观

我们在写标识时已经养成习惯,当希望字体大点就用<h1>,希望在前面加个点符号就用<li>。我们总是想<h1>的意思是大的,<li>的意思是圆点,<b>的意思是“加粗文本”。而实际上, <h1>能变成你想要的任何样子,通过CSS,<h1>能变成小的字体,<p>文本能够变成巨大的、粗体的,<li>能够变成一张图片等等。我们不能强迫用结构元素实现表现效果,我们应该使用CSS来确定那些元素的外观。例如,我们可以使原来默认的6级标题可以看起来大小一样:

h1, h2, h3, h4, h5, h6{ font-family: 宋体, serif; font-size: 12px; }

  • 用结构化元素代替无意义的垃圾

许多人可能从来都不知道HTML和XHTML元素设计本意是用来表达结构的。我们很多人已经习惯用元素来控制表现,而不是结构。例如,一段列表内容可能会使用下面这样的标识:

句子一<br /> 句子二<br /> 句子三<br />

如果我们采用一个无序列表代替会更好:

<ul> <li>句子一</li> <li>句子二</li> <li>句子三</li> </ul>

你或许会说“但是<li>显示的是一个圆点,我不想用圆点”。事实上,CSS没有设定元素看起来是什么样子,你完全可以用CSS关掉圆点。

  • 给每个表格和表单加上id

给表格或表单赋予一个唯一的、结构的标记,例如

<table id="menu">

接下来,在书写样式表的时候,你就可以创建一个“menu”的选择器,并且关联一个CSS规则,用来告诉表格单元、文本标签和所有其他元素怎么去显示。这样,不需要对每个<td>标签附带一些多余的、占用带宽的表现层的高、宽、对齐和背景颜色等等属性。只需要一个附着的标记(标记“menu”的id标记),你就可以在一个分离的样式表内为干净的、紧凑的代码标记进行特别的表现层处理。

中级改善我们这里先列主要的三点,但其中包含的内容和知识点非常多,需要我们逐步学习和掌握,直到最后实现完全采用CSS而不才用任何表格实现布局。

分享到:
评论

相关推荐

    linux 下的W3C帮助文档

    2. **离线阅读**:对于没有稳定网络连接或者希望快速查找信息的开发者,可以下载W3C的帮助文档到本地。压缩包中的`www.w3school.com.cn`可能包含这个镜像站的完整页面,解压后可以在本地浏览,这样可以避免网络延迟...

    W3C和网页制作开发手册

    在本篇中,我们将深入探讨W3C在网页制作中的角色,以及如何利用W3C开发手册和网页制作完全手册进行高效的学习和开发。 首先,W3C是互联网技术的核心推动者,它定义了一系列标准,包括HTML5、CSS3以及XML等,这些...

    w3c系列教程

    【标题】:“W3C系列教程” 这是一套全面深入的W3C标准教程,涵盖了Web开发中的核心语言和技术,包括HTML(超文本标记语言)、CSS(层叠样式表)以及JavaScript,同时还涉及XML(可扩展标记语言)。这些技术是构建...

    w3c W3school文档—Web全部标记元素

    【标题】"w3c W3school文档—Web全部标记元素"揭示了这是一份关于Web前端开发的重要参考资料,特别关注HTML、CSS、JavaScript以及AJAX等技术的标记元素。W3School是知名的在线学习平台,它提供的文档通常涵盖了Web...

    W3C教程完全版离线版

    这个离线版确保了无论何时何地,只要手头有这个压缩包,就能获取到最新的W3C规范和教程。 W3C,全称World Wide Web Consortium(万维网联盟),是制定和维护Web标准的国际组织,它的目标是促进Web的互操作性和无...

    transitions:W3C过渡

    过渡到候选建议: 发布候选人推荐草案:无需董事的批准,只需使用Echidna。 更新候选推荐快照: 拟议建议: 取代建议的提案: 关于过时建议的提案: 建议:由于需要查看AC审核意见,因此这些过渡单独完成。 但是您...

    W3C+CSS标准手册

    **W3C与CSS标准简介** W3C(World Wide Web Consortium)是互联网标准化组织,负责制定和维护网络技术的开放标准,包括HTML、XML、SVG等。CSS(Cascading Style Sheets)则是W3C制定的一种样式表语言,用于描述HTML...

    W3C全套学习手册up

    **W3C全套学习手册** 是一套全面涵盖Web标准组织W3C所制定的各种核心技术的学习资源,主要包括HTML、XML以及相关的Web开发课程。这个压缩包文件包含了一系列的教程和资料,旨在帮助学习者深入理解并掌握这些核心技能...

    w3c标准html5手册

    “w3c标准html5手册”中的CSS部分将涵盖CSS3的新功能,如选择器的扩展、多列布局、动画和过渡、响应式设计(媒体查询)等。JavaScript部分可能会讲解ECMAScript 5和6的新特性,如箭头函数、let和const关键字、...

    w3c school 中文帮助文档

    W3C School的中文帮助文档还包含了SQL(数据库查询语言)、JSON(数据交换格式)、SVG(可缩放矢量图形)等技术的教程,以及网络协议、前端框架(如Bootstrap、jQuery)等内容。 总之,【W3C School 中文帮助文档】...

    W3C网页标准、div+css教程、xhtml+css介绍

    网页标准与前端开发技术是构建现代网页不可或缺的部分,其中W3C(World Wide Web Consortium)制定的网页标准扮演着核心角色。W3C是互联网工程任务组,负责维护和推进互联网相关的技术和协议,包括HTML、CSS、XML等...

    完全w3c标准的网页模板

    "完全w3c标准的网页模板"是一个遵循Web Consortium(W3C)制定的网页标准的模板集合,这确保了模板在各种浏览器和设备上的一致性和兼容性。 W3C标准是全球互联网社区共同制定的开放标准,包括HTML(超文本标记语言...

    W3C完整的网站技术参考手册

    **W3C完整的网站技术参考手册** W3C(World Wide Web Consortium)是全球公认的互联网标准制定组织,致力于创建开放的互联网技术标准。这个“W3C完整的网站技术参考手册”是一个全面涵盖W3C规范的资源集合,旨在...

    CSS.JS.HTMLJquer.w3c手册集合

    通过深入学习这些手册,你可以全面了解和掌握CSS、JS、HTML和jQuery的基本原理及高级技巧,并了解到W3C规范的重要性。这将有助于你在Web开发领域建立起扎实的知识体系,实现高效、高质量的网页设计和开发。

    w3school最新离线手册(中文版)

    《w3school最新离线手册(中文版)》是一份极具价值的学习资源,专为前端开发者和物联网(IoT)领域的学习者设计。这个压缩包包含的“www.w3school最新中文版手册”文件,提供了丰富的Web技术知识,无需网络连接即可...

    W3School离线手册中文版(web前端)

    **W3School离线手册中文版(Web前端)** 该资源是W3School的中文离线版,专门针对Web前端开发提供详尽的技术参考和学习资料。W3School是全球知名的在线Web技术教程平台,其内容权威且全面,深受开发者喜爱。这份...

    PHP+W3c+Jquery集合手册最新版.zip

    W3C规范确保了不同浏览器之间的兼容性,使得开发者能够创建跨平台、跨设备的网页。最新版的HTML5标准引入了更多的多媒体元素、离线存储功能和增强的表单控制,提升了Web应用的用户体验。同时,CSS3则提供了更多的...

    w3c教程

    【标题】"W3C教程"所指的是一项关于网络标准和规范的学习资源,主要涵盖了World Wide Web Consortium(W3C)制定的各种技术规范。W3C是互联网行业的权威机构,负责制定和维护开放的Web标准,以确保互联网的互操作性...

Global site tag (gtag.js) - Google Analytics