html5需遵循的6个设计原则


Posted in HTML / CSS onApril 27, 2016

实际上,html5并不是由w3c直接制定的,w3c的方向是xhtml2,而不是html5。当xhtml2脱离现实,无法付诸实践时,w3c工作组才将研究方向转向html5。为什么xhtml2从未落到实处?因为它违反了一条设计原理,这条设计原理就是著名的伯斯塔尔法则——发送时要保守;接收时要开放。而在html5设计过程中遵循了一系列原则,才使得html5得以快速推广,本文将介绍html5遵循的6个设计原则,具体如下

原则一:避免不必要的复杂性

html4

<!DOCTYPE html PUBLIC "-//W3C/DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

html5

<!DOCTYPE html>
 
html4

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

html5

<meta charset="utf-8">
 
原则二:支持已有的内容

以下四段代码,在xhtml中只有第一段是正确的;而在html5中,所有的都是正确的

XML/HTML Code复制内容到剪贴板
  1. <img src="foo" alt="bar" />  
  2. <p class="foo">Hello world</p>  
  3.     
  4. <img src="foo" alt="bar">  
  5. <p class="foo">Hello world   
  6.     
  7. <IMG SRC="foo" ALT="bar">  
  8. <P CLASS="foo">Hello world</P>  
  9.     
  10. <img src=foo alt=bar>  
  11. <p class=foo>Hello world</p>  
  12.   

原则三:解决现实的问题

在html4中,即使两个块级元素元素有相同的链接地址,也必须分开写,因为内联元素不能包含块级元素

<h2><a href="/path/to/resource">Headline text</a></h2>
<p><a href="/path/to/resource">Paragraph text.</a></p>

而在html5中,由于使用了内容模型,<a>元素也可以包含块级元素

XML/HTML Code复制内容到剪贴板
  1. <a href="/path/to/resource">  
  2.     <h2>Headline text</h2>  
  3.     <p>Paragraph text.</p>  
  4. </a>  

 
原则四:求真务实

html5新增了多个元素,其中包括:section、article、aside和nav,它们代表了一种新的内容模型——给内容分区。以前人们一直都在用div来组织页面中的内容,但与其他类似的元素一样,div本身并没有语义。但section、article、aside和nav实际上是在明确地告诉你——这一块就像文档中的另一个文档一样。位于这些元素中的任何内容,都可以拥有自己的概要、标题,自己的脚部。

原则五:平稳退化
 
浏览器在遇到不识别的type值时,会将type的值解释为text

input type="number"
input type="search"
input type="range"
input type="email"
input type="date"
input type="url"

原则六:最终用户优先

一旦遇到冲突,最终用户优先,其次是作者,其次是实现者,其次标准制定者,最后才是理论上的完满。

以上就是html5需遵循的6个设计原则,希望对大家的学习有所帮助。

HTML / CSS 相关文章推荐
CSS3中的元素过渡属性transition示例详解
Nov 30 HTML / CSS
css3实现一款模仿iphone样式的注册表单
Mar 20 HTML / CSS
CSS3旋转——彩色扇子兼容firefox浏览器
Jun 04 HTML / CSS
使用css3制作登录表单的步骤
Apr 07 HTML / CSS
使用css3实现的windows8开机加载动画
Dec 09 HTML / CSS
css3实现元素环绕中心点布局的方法示例
Jan 15 HTML / CSS
css3使用animation属性实现炫酷效果(推荐)
Feb 04 HTML / CSS
HTML5 微格式和相关的属性名称
Feb 10 HTML / CSS
html5-Canvas可以在web中绘制各种图形
Dec 26 HTML / CSS
移动端解决悬浮层(悬浮header、footer)会遮挡住内容的3种方法
Mar 27 HTML / CSS
用HTML5中的Canvas结合公式绘制粒子运动的教程
May 08 HTML / CSS
canvas实现二维码和图片合成的示例代码
Aug 01 HTML / CSS
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
Apr 26 #HTML / CSS
HTML5标签嵌套规则详解【必看】
Apr 26 #HTML / CSS
HTML 5.1来了 9月份正式发布 更新内容预览
Apr 26 #HTML / CSS
HTML5本地数据库基础操作详解
Apr 26 #HTML / CSS
HTML5移动端手机网站开发流程
Apr 25 #HTML / CSS
基于html5绘制圆形多角图案
Apr 21 #HTML / CSS
浅析border-radius如何兼容IE
Apr 19 #HTML / CSS
You might like
将兴奋、喜悦和坎加斯带到戴安娜:亚马逊公主
2020/03/03 欧美动漫
PHP-MySQL教程归纳总结
2008/06/07 PHP
学习php设计模式 php实现门面模式(Facade)
2015/12/07 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
HR vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
javascript优先加载笔记代码
2008/09/30 Javascript
超越Jquery_01_isPlainObject分析与重构
2010/10/20 Javascript
关于JavaScript的面向对象和继承有利新手学习
2013/01/11 Javascript
jquery中表单 多选框的一种巧妙写法
2015/09/06 Javascript
javascript特殊日历控件分享
2016/03/07 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
jQuery插件简单学习实例教程
2016/07/01 Javascript
jquery easyUI中ajax异步校验用户名
2016/08/19 Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
2017/01/05 Javascript
js学习总结之DOM2兼容处理顺序问题的解决方法
2017/07/27 Javascript
JQuery模拟实现网页中自定义鼠标右键菜单功能
2018/11/14 jQuery
jquery实现动态创建form并提交的方法示例
2019/05/27 jQuery
javascript实现点击小图显示大图
2020/11/29 Javascript
简单谈谈Python的pycurl模块
2018/04/07 Python
PHP实现发送和接收JSON请求
2018/06/07 Python
python nohup 实现远程运行不宕机操作
2020/04/16 Python
HTML5 Canvas的常用线条属性值总结
2016/03/17 HTML / CSS
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
Currentbody澳大利亚:美容仪专家
2019/11/11 全球购物
教育系毕业生中文求职信范文
2013/10/06 职场文书
应用电子专业学生的自我评价
2013/10/16 职场文书
八一慰问活动方案
2014/02/07 职场文书
十八届三中全会报告学习材料
2014/02/17 职场文书
机关中层领导干部群众路线教育实践活动个人对照检查材料
2014/09/24 职场文书
民主生活会对照检查材料思想汇报
2014/09/27 职场文书
物价局领导班子四风问题整改措施
2014/10/26 职场文书
2015年医院后勤工作总结
2015/05/20 职场文书
八一建军节主持词
2015/07/01 职场文书
六五普法学习心得体会
2016/01/21 职场文书
2016年“节能宣传周”活动总结
2016/04/05 职场文书
python使用openpyxl库读写Excel表格的方法(增删改查操作)
2021/05/02 Python