简述web与w3c标准的认识
web可以简单分为:结构、表现、行为。三部分独立开来使其模块化
w3c是对web做出规范,使代码更严谨,做出来的网页更易使用,维护。
w3c做出的规范可分为如下:
结构上:(标签规范对页面的搜索权重有很大关系,写的越规范网站在搜索排名越靠前)
- 标签闭合、标签小写、不乱嵌套
表现、行为上:
- 使用外链的css和js脚本,提高页面渲染效率。
- 少使用行内样式,类名要做到见名知意
什么是W3C
- 万维网(World Wide Web)
- 万维网联盟(World Wide Web Consortium)
- 万维网联盟创建于1994年,是Web技术领域最具权威和影响力的国际中立性技术标准机构
什么是W3C标准
- 万维网联盟(外语缩写:W3C)标准不是某一个标准,而是一系列标准的集合
- 网页主要由三部分组成:
- 结构(Structure)
- 表现(Presentation)
- 行为(Behavior)
- 结构化标准语言主要包括XHTML和XML
- 表现标准语言主要包括CSS
- 行为标准主要包括对象模型(如W3C DOM)、ECMAScript
开发者使用的W3C标准的体现
也可以说是开发者在开发过程中怎么去准守W3C标准
其实这里面很多规范是为了xhtml的,不过还是建议大家了解一下
友情提示!
jQurry不符合W3C标准
1. 需要声明(DOCTYPE)
2. 需要定义语言编码
<meta http-equiv=“Content-Type” content=“text/html; charset=gb2312” />
3. JavaScript定义
- Js必须要用<script language=“javascript” type=“text/javascript”>来开头定义,而不是原来的<script language=javascript>或干脆直接<script>
- 并且需要加个注释符<!-- -->,以保证不在不支持js的浏览器上直接显示出代码来(做了解)
4. CSS定义
- CSS必须要用<style type=“text/css”>开头来定义,而不是原来的直接<style>
- 也不建议直接写在内容代码里(行内样式)如:<div style=“padding-left:20px;”></div>
- 为保证各浏览器的兼容性,在写CSS时请都写上数量单位
<style type="text/css" media="screen">
<!--
body {
margin:0px;
padding:0px;
font-size:12px;
text-align:center
}
-->
</style>
5. 不要在注释内容中使用’’–’’
- “–”只能发生在XHTML注释的开头和结束,也就是说,在内容中它们不再有
例如下面的代码是无效的: <!--这里是注释-----------这里是注释--> 正确的应用等号或者空格替换内部的虚线: <!--这里是注释============这里是注释-->
6. 所有标签的元素和属性的名字都必须使用小写
- 与HTML不一样,XHTML对大小写是敏感的,<title>和<TITLE>是不同的标签
- XHTML要求所有的标签和属性的名字都必须使用小写
- 例如:<BODY>必须写成<body>
- 大小写夹杂也是不被认可的,通常dreamweaver自动生成的属性名字"onMouseOver"也必须修改成"onmouseover"
7. 所有的属性必须用引号""括起来
- 在HTML中,你可以不需要给属性值加引号,但是在XHTML中,它们必须被加引号
- 例如:<height=80>必须修改为:<height=“80”>
- 特殊情况,你需要在属性值里使用双引号,你可以用",单引号可以使用',例如:<alt=“say'hello'”>
8. 把所有<和&特殊符号用编码表示
- 任何小于号(<),不是标签的一部分,都必须被编码为 < 任何大于号(>),不是标签的一部分,都必须被编码为 > 任何与号(&),不是实体的一部分的,都必须被编码为 &
9. 所有属性必须有属性值
- XHTML规定所有属性都必须有个值,没有值就是重复本身
// 不规范
<td nowrap><input type="checkbox" name="shirt" value="medium" checked>
// 规范做法
<td nowrap="nowrap"><input type="checkbox" name="shirt" value="medium" checked="checked" />
10. 所有的标签都必须有相应的结束标签
- 以前在HTML中,你可以打开许多标签,例如<p>和<li>而不一定写对应的</p>和</li>来关闭它们
- 但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个"/"来关闭它
11. 所有的标签都必须合理嵌套
- 一层一层的嵌套必须是严格对称
错误: <table><tr><form><td></td></form></tr></table> 正确: <form><table><tr><td></td></tr></table></form>
12. 图片添加有意义的alt属性
- 图片加载失败时可以用alt属性表明图片内容
- 同理添加文字链接的title属性,帮助显示不完整的内容显示完整
// 尽可能的让作为内容的图片都带有属于自己的alt属性
<img src="logo.gif" width="100" height="100" align="middle" boder="0" alt="w3cschool" />
// 在一些限定字数的内容展示尤为重要,帮助显示不完成的内容显示完整,而不用考虑页面会因此而撑大
<a href="#" target="_blank" title="新闻新闻新闻新闻">新闻新闻…</a>
13. 在form表单中增加label,以增加用户友好度
<form action="http://xxxx.com/xxx/xxx" method="post">
<label for="firstname">first name: </label>
<input type="text" id="firstname" />
<label for="lastname">last name: </label>
<input type="text" id="lastname" />
</form>
扩展
- 标签规范可以提高搜索引擎对页面的抓取效率,对SEO(搜索引擎优化)很有帮助
- 尽量使用外链css样式表和js脚本:
- 结构、表现和行为分为三块,符合规范
- 同时提高页面渲染速度,提高用户的体验
- 样式尽量少用行间样式表,使结构与表现分离,标签的id和class等属性命名要做到见文知义,标签越少,加载越快,用户体验提高,代码维护简单,便于改版