HTML5设计原理

本文基于Jeremy Keith在Fronteers 2010的演讲,解析HTML5设计的六大原则:避免复杂性、支持已有内容、解决现实问题、求真务实、平稳退化和最终用户优先。内容涵盖DOCTYPE的意义、新元素的语义、表单增强以及视频元素的兼容性处理,旨在深入理解HTML5设计背后的思考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总结自Jeremy Keith在 Fronteers 2010 上的主题演讲。

这里要讲的只是HTML5,并不包含CSS3,而且讲的不是HTML5包含什么,而是讲为什么会包含它们。即HTML5的设计原理。

设计原理 本质上是一种信念、一种想法、一个概念,是你行动的支柱。不管你是制定规范,还是制造一种有形的物品,或者编写软件,甚至发明编程语言。你都能找到背后的一个或者多个设计原理,多人协作的任何成果都是例证。

伯斯塔尔法则(Postel’s Law):发送时要保守;接收时要开放。什么意思呢?意思就是,作为专业人士,在发送文档的时候,我们会尽量保守一些,尽量采用最佳实践,尽量确保文档格式良好。但从浏览器的角度说,它们必须以开放的姿态去接收任何文档。

好了,下面说一下设计原理吧。

设计原理

1、避免不必要的复杂性

这个很简单,举个例子来说

<!DOCTYPE html >

HTML5只要这样写doctype就可以了,那么之前呢,拿之前的HTML4.01来说,

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

这么一长串根本记不住!

那么,doctype是用来干什么的呢,为什么在文档开始就要写doctype呢?

回答一下上面的问题:
        它不是写给浏览器看的。Doctype 是写给验证器看的。也就是说,我之所以要在文档一开头写那行 doctype,是为了告诉验证器,让验证器按照该 doctype来验证我的文档。浏览器在接收的时候必须要开放。因此,它不会检查任何格式类型,而验证器会,验证器才关心格式类型。这才是存在 doctype> 的真正原因。
        而按照 HTML5 的另一个设计原理, 它必须向前向后兼容, 兼容未来的 HTML 版本——不管是 HTML6、HTML7,还是其他什么——都要与当前的 HTML 版本,HTML5,兼容。因此,把一个版本号放在 doctype 里面没有多大的意义,即使对验器证也一样。

在页面上加入了doctype,就相当于声明了“我想使用标准模式”

2、支持已有内容

        我们都会考虑让 Web 的未来发展得更好,但他们则必须考虑过去。别忘了 W3C 这个工作组中有很多人代表的是浏览器厂商, 他们肯定是要考虑支持已有内容的。 只要你想构建一款浏览器,就必须记住这个原则:必须支持已有的内容。
举个例子:

<img src=
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值