开发者需要知道的11条HTML5小常识
#HTML5: The Missing Manual# 如果说HTML是一部电影,那HTML5就是一次大转折。HTML本来是不会活过21世纪的。官方Web标准组织W3C在1998年对HTML就已经撒手不管了。W3C把未来都寄托在XHTML,这个更具现代特色的后续标准身上。 是一群被剥夺了话语权的人,让HTML起死回生并为本书将要探讨的功能奠定了基础。
HTML5的“自由散漫”表现在:(1)不要求网页中必须包含<html>、<head>和<body>元素;(2)标记和属性均不区分大小写;(3)允许省略关闭空元素(void elment)的斜杠;(4)属性值中只要不包含受限的字符(比如>、=或空格),就可以不加引号;(5)只有属性名没有属性值也可以。
严肃的Web开发人员编写HTML5页面还是要遵循XHTML语法:(1)包含可选的<html>、<head>和<body>元素;(2)标签和属性全部小写;(3)标签不要错误嵌套;(3)属性值要加引号。想验证自己的HTML5页面是否符合XHTML语法?使用这个验证器http://t.cn/ScF199,在Prese中选XHTML5。
#HTML5:The Missing Manual#由于HTML5标准描述的都是事实,而不是抛出一堆理想的规则了事,因此它有望成为有史以来受支持程度最高的Web标准。
HTML5有两个版本:开发人员版(http://t.cn/Scs9Dj)要求摒弃过去的那些坏习惯和被废弃的元素。通过使用HTML5验证器可以确保遵循HTML5标准的这一部分。浏览器开发商版(http://t.cn/7vZ3v)包含从头实现一个兼容过去和未来的浏览器所需要的全部信息。前者是后者的子集。
今天,当你听到别人提及HTML5,可能有三层意思:(1)HTML5核心,即W3C官方规范,涉及新语义元素、新表单控件、音频和视频、画布;(2)曾经属于HTML5的功能,源自WHATWG最初制定的规范,但逐步被剥离出来,包括本地数据存储、离线应用、消息传递等;(3)有时候会被称为HTML5的功能,包括CSS3、地理定位等。
XHTML5(Polyglot Markup:http://t.cn/SV7jJt)是HTML5与XML的交集,是兼顾二者的方案,可由XML或HTML解析器解析,解析后都生成相同的DOM。服务器端配置的MIME类型决定使用的解析器:application/xhtml+xml 或 text/html。注意:IE9之前的IE不支持XML解析器。另可参考:http://t.cn/SV7jJc
HTML5保留的HTML元素有100+,新增的元素30个左右,改变含义的元素大约10个。看这里一目了然:http://t.cn/GLE0G
HTML5删除了框架,但<iframe>得以保留,因为Web应用经常要利用<iframe>实现一些集成任务,比如在网页中包含视频窗口、广告单元和谷歌搜索框等。
HTML5中改变了一些元素的含义。如<small>元素(<big>被删了),原来是表现性的元素,用于缩小文本,现在它的含义是“small print”,即附属细则,用于页面底部的法律条款。再如<hr>和<s>元素,前者插入水平线,后者加删除线,但在HTML5中它们的含义变成了“主题转换”和“不准确、不相关的内容”。
XHTML 1.0为替代<b>和<i>引入<strong>和<em>是想引入重要和强调的语义。HTML5为这4个标签赋予了新的含义:<strong>表示要突出显示的“重要内容”、<b>仅表示“粗体”但不是更重要(关键字、产品名)、<em>表示要大声朗读的“重读内容”、<i>仅表示“斜体文本”但不是更重要(外文单词、技术术语)。
开发者需要知道的11条HTML5小常识的更多相关文章
- PHP开发者该知道的5个Composer小技巧
Composer 是新一代的PHP依赖管理工具.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方便. 1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单 co ...
- 【转载】PHP 开发者该知道的 5 个 Composer 小技巧
Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方 ...
- PHP 开发者该知道的5个 Composer 小技巧
Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer PHP依赖管理的新时代>.本文介绍使用Composer的五个小技巧,希望能给你的PHP开发带来方 ...
- PHP 开发者该知道的 5 个 Composer 小技巧
From: https://segmentfault.com/a/1190000000355928 Composer是新一代的PHP依赖管理工具.其介绍和基本用法可以看这篇<Composer P ...
- (转) PHP 开发者该知道的 5 个 Composer 小技巧
1. 仅更新单个库 只想更新某个特定的库,不想更新它的所有依赖,很简单: composer update foo/bar 此外,这个技巧还可以用来解决“警告信息问题”.你一定见过这样的警告信息: Wa ...
- 对于JavaScript的函数.NET开发人员应该知道的11件事
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 昨天小感冒今天重感冒,也不能长篇大论.如果你是.NET开发人员,在进入前端开发领域的时候,对 ...
- 前端开发者应该知道的 CSS 小技巧
一些小技巧让你的CSS技术更专业 使用:not()去除导航上不需要的边框 为body添加行高 垂直居中任何元素 逗号分离的列表 使用负nth-child选择元素 使用SVG图标 文本显示优化 在纯CS ...
- iOS 开发者应该知道的 ARM 结构
http://news.cnblogs.com/n/68903/ 我在写「NEON on iPhone 入门」的时候,曾以为读者已经比较了解 iOS设备的处理器知识.然而,看过网上的一些讨论,我才发现 ...
- 系统管理员应该知道的20条Linux命令
如果您的应用程序不工作,或者您希望在寻找更多信息,这 20 个命令将派上用场. 在这个全新的工具和多样化的开发环境井喷的大环境下,任何开发者和工程师都有必要学习一些基本的系统管理命令.特定的命令和工具 ...
随机推荐
- Codeforces Round #330 (Div. 1) A. Warrior and Archer 贪心 数学
A. Warrior and Archer Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/594 ...
- C#的WebBrowser操作frame如此简单
刚学c#不久,也不太懂什么IHTMLDocument.IHTMLDocument2.IWebBrowser2等等.自己琢磨了好久,终于知道了怎么用WebBrowser操作frame和iframe. 1 ...
- Android 4.1源码编译找不到资源文件解决办法
我们在Android framework中修改资源文件时,在Android 4.0之前,都是直接在sourcecode/frameworks/base/core/res/res下面添加对应的资源文件, ...
- Android多媒体数据库之MediaStore研究
应网友要求,今天给大家讲android的多媒体数据库.MediaStore这个类是android系统提供的一个多媒体数据库,android 中多媒体信息都可以从这里提取.这个MediaStore包括了 ...
- C#并行编程 (Barrier,CountdownEvent,ManualResetEventSlim,SemaphoreSlim,SpinLock,SpinWait )
背景 有时候必须访问变量.实例.方法.属性或者结构体,而这些并没有准备好用于并发访问,或者有时候需要执行部分代码,而这些代码必须单独运行,这是不得不通过将任务分解的方式让它们独立运行. 当任务和线程要 ...
- BFS-hdu-1226-超级密码
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1226 题目意思: 给一个N,给nn个jj进制的数字,问最小的不超过500位的由这些数字组成的jj进制 ...
- 基于 Jenkins 快速搭建持续集成环境--转
源地址:http://www.ibm.com/developerworks/cn/java/j-lo-jenkins/ 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础 ...
- Redis 脚本
Redis 脚本使用 Lua 解释器来执行脚本. Reids 2.6 版本通过内嵌支持 Lua 环境.执行脚本的常用命令为 EVAL. 语法 Eval 命令的基本语法如下: redis 127.0.0 ...
- Codec工具类
import java.math.BigInteger; import org.apache.commons.codec.DecoderException; import org.apache.com ...
- cocos2d-x lua 调用onEnter和onExit
cocos2d-x lua 调用onEnter和onExit version: cocos2d-x 3.6 onEnter和onExit在lua中不会因节点别add和remove而直接被调用,当子节点 ...