首頁 > web前端 > H5教程 > 主體

HTML5學習筆記簡明版(1):HTML5介紹與文法

黄舟
發布: 2017-01-21 16:28:42
原創
1380 人瀏覽過

HTML5介紹

HTML5是繼HTML4以後的下一代HTML標準規範,它提供了一些新的元素和屬性(例如

語法(Syntax)

1 文件媒體類型

HTML5定義的HTML語法大部分都相容於HTML4和XHTML1,但也有一部分不相容。大多數的HTML文件都是保存成text/html媒體類型。

HTML5為HTML語法定義了詳細的解析規則(包括錯誤處理),使用者必須遵守這些規則將它保存成text/html媒體類型。如下是符合HTML語法規範的範例:

<!doctype html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Example document</title>
  </head>
  <body>
    <p>Example paragraph</p>
  </body>
</html>
登入後複製

HTML5為HTML語法也定義了一個text/html-sandboxed媒體類型,以便可以host不信任的內容。

其它能夠用在HTML5的語法是XML,它相容於XHTML1。用XML語法的話需要將文件保存成XML媒體類型,並且根據XML的規格需要設定命名空間(namespace)為http://www.w3.org/1999/xhtml。

下面的範例文件符合HTML5裡的XML語法規範,要注意的是XML文件必須儲存成XML媒體類型的,例如application/xhtml+xml或application/xml。

<?xml version="1.0" encoding="UTF-8"?>
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>Example document</title>
  </head>
  <body>
    <p>Example paragraph</p>
  </body>
</html>
登入後複製

2 Character Encoding

HTML5的HTML语法里,有三种形式可以声明字符串的encoding类型:

在传输级别(transport level)上,在HTTP实例的header里设置Content-Type。

在文件的开头设置一个Unicode的Byte Order Mark(BOM),该字符为文件的encoding方式提供了一个签名。

在文档的前1024个byte之前的内容里,使用带有charset属性的meta元素来声明encoding方式。例如:表明该文档是UTF-8格式的。它是替换原有的语法声明,尽管原有的语法依然可用,但在HTML5里不推荐使用。

对于HTML5里的XML语法,依然和以前的XML语法声明式一样的。

3 DOCTYPE

HTML5的HTML语法要求文档必须声明DOCTYPE以确保浏览器可以在标准模式下展示页面。这个DOCTYPE没有其它的目的,并且在XML里是可选项,因为XML媒体格式的文档一直就是在标准模式下处理的。

DOCTYPE的声明方式是,不区分大小写。HTML的早期版本声明的DOCTYPE需要很长是因为HTML语言是建立在SGML的基础上,所以需要关联引用一个相对应的DTD。HTML5和之前的版本不一样了,仅仅需要声明DOCTYPE就可以告诉文档启用的是HTML5语法标准了,浏览器会为做剩余的工作的。

4 MathML和SVG

HTML5的HTML语法允许在文档里使用MathML(数学标记语言)和SVG(可伸缩矢量图)元素。例如,一个非常简单的HTML页面包含一个svg元素画出的圆:

<!doctype html>
<title>SVG in text/html</title>
<p>
 A green circle:
 <svg> <circle r="50" cx="50" cy="50" fill="green"/> </svg>
</p>
登入後複製

更多复杂的组合标记也是支持的,比如使用svg的foreignObject元素你可以嵌套MathML, HTML,或者自身嵌套。

5 其它

HTML5已经原生支持IRI了,尽管这些IRI只能在UTF-8和UTF-16的文档里使用。

lang属性如果设置的不合法,将会更新为空字符串,以告诉浏览器是一个未知的语言,作用和XML里的xml:lang一样。

以上就是HTML5学习笔记简明版(1):HTML5介绍与语法 的内容,更多相关内容请关注PHP中文网(www.php.cn)!


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板