对web标准的理解

1,711 阅读4分钟

W3C标准

万维网联盟(World Wide Web Consortium)标准不是某一个标准,而是一些列标准的集合。

网页主要有三部分组成:

  • 结构(Structure)
  • 表现(Presentation)
  • 行为(Behavior)

对应的标准也有三方面:

  • 结构化标准主要包括XHTML和XML
  • 表现标准语言主要包括CSS
  • 行为标准主要包括(如W3C DOM、ECMAScript)

为什么要遵循标准:

用一个程序语言来说,我们是转换器........adapter,我们想方设法让我们的页面、我们的程序能够支持所有浏览器,能够满足尽可能多的用户。我们要满足所有的用户,即使做不到,我们也要满足我们技术范围之内的所有用户。

标准规范:

1、 需要声明DOCTYPE

DOCTYPE(document type)文档类型的简写,用来说明你用的XHTML或者HTML是什么版本。

其中DTD叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。

要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和css都不会生效。

XHTML 1.0 提供了三种DTD声明可供选择:有过度的(Transitional)、严格的(strict)、框架的(frameset)

2、需要定义语言编码

<meta http-equiv=“Content-Type” content=“text/html; charset=gb2312” />

注:如果忘记了定义语言编码,可能会出现页面乱码现象。

3、JavaScript定义

Js必须要<script language="javascript" type="text/javascript">来开头定义,以保证在不支持js的浏览器上直接显示出来。

4、CSS定义

CSS必须要用<style type=“text/css”>开头来定义,为保证各浏览器的兼容性,在写CSS时请都写上数量单位。

例如:错误:.space_10{padding-left:10} 正确:.space_10 {padding-left:10px}

5、使用注释

正确的应用等号或者空格替换内部的虚线。

<!--这里是注释============这里是注释-->

6、所有标签的元素和属性名字都必须使用小写

HTML不一样,XHTML对大小写是敏感的,<title><TITLE>是不同的标签。XHTML要求所有的标签和属性的名字都必须使用小写。

7、所有属性值必须用引号括起来("" '')双引号或单引号

8、把所有特殊符号用编码表示

空格为&nbsp; 、小于号(<)&lt、大于号(>)&gt、和号(&)&amp等。

9、所有属性必须有属性值

XHTML规定所有属性都必须有个值,没有值就是重复本身。

10、所有的标记都必须有相应的结束标记

双标记:<div></div>

单标记:<img />

11、所有的标记都必须合理嵌套

<p><b></p></b> 必须修改为:<p><b></b></p>

12、图片添加有意义的alt属性

图片加载失败时可以用alt属性表明图片内容。同理添加文字链接的title属性,帮助显示不完整的内容显示完整。

13、在form表单中增加label,以增加用户友好度

<form>
    <labelfor="firstname">first name: </label>
    <inputtype="text" id="firstname"/>
</form>

以上是规范标准

WEB标准(结构、表现、行为分离)有哪些优点呢?

  • 易于维护:只需更改CSS文件,就可以改变整站的样式
  • 页面响应快:HTML文档体积变小,响应时间短
  • 可访问性:语义化的HTML(结构和表现相分离的HTML)编写的网页文件,更容易被屏幕阅读器识别
  • 设备兼容性:不同的样式表可以让网页在不同的设备上呈现不同的样式
  • 搜索引擎:语义化的HTML能更容易被搜索引擎解析,提升排名

结论

  • 标签规范可以提高搜索引擎对页面的抓取效率,对SEO(搜索引擎优化)很有帮助。

  • 尽量使用外链css样式表和js脚本。是结构、表现和行为分为三块,符合规范。同时提高页面渲染速度,提高用户的体验。

  • 样式尽量少用行间样式表,使结构与表现分离,标签的idclass等属性命名要做到见文知义,标签越少,加载越快,用户体验提高,代码维护简单,便于改版

参考链接:

blog.csdn.net/Hhy_9288/ar… www.w3cschool.cn/xuexiw3c/xu…