官术网_书友最值得收藏!

1.3 HTML5語法特性

HTML5以HTML4為基礎(chǔ),對HTML4進(jìn)行了全面升級改造。與HTML4相比,HTML5在語法上有很大的變化,具體比較如下:

1.3.1 文檔和標(biāo)記

視頻講解

1.內(nèi)容類型

HTML5的文件擴(kuò)展名和內(nèi)容類型保持不變。例如,擴(kuò)展名仍然為“.html”或“.htm”,內(nèi)容類型(ContentType)仍然為“text/html”。

2.文檔類型

在HTML4中,文檔類型的聲明方法如下:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/
xhtml1-transitional.dtd">

在HTML5中,文檔類型的聲明方法如下:

    <!DOCTYPE html>

當(dāng)使用工具時,也可以在DOCTYPE聲明中加入SYSTEM識別符,聲明方法如下:

    <!DOCTYPE HTML SYSTEM "about:legacy-compat">

在HTML5中,DOCTYPE聲明方式是不區(qū)分大小寫的,引號也不區(qū)分是單引號還是雙引號。

注意:使用HTML5的DOCTYPE會觸發(fā)瀏覽器以標(biāo)準(zhǔn)模式顯示頁面。眾所周知,網(wǎng)頁都有多種顯示模式,如怪異模式(Quirks)、標(biāo)準(zhǔn)模式(Standards)。瀏覽器根據(jù)DOCTYPE來識別該使用哪種解析模式。

3.字符編碼

在HTML4中,使用meta元素定義文檔的字符編碼,如下所示:

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

在HTML5中,繼續(xù)沿用meta元素定義文檔的字符編碼,但是簡化了charset屬性的寫法,如下所示:

    <meta charset="UTF-8">

對于HTML5來說,上述兩種方法都有效,用戶可以繼續(xù)使用前面一種方式,即通過content元素的屬性來指定。但是不能同時混用兩種方式。

注意:在傳統(tǒng)網(wǎng)站中,可能會存在下面的標(biāo)記。在HTML5中,這種字符編碼方式將被認(rèn)為是錯誤的。

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

從HTML5開始,對于文件的字符編碼推薦使用UTF-8。

1.3.2 寬松的約定

視頻講解

HTML5語法是為了保證與之前的HTML4語法達(dá)到最大限度的兼容而設(shè)計(jì)的。

1.標(biāo)記省略

在HTML5中,元素的標(biāo)記可以分為三種類型:不允許寫結(jié)束標(biāo)記,可以省略結(jié)束標(biāo)記,開始標(biāo)記和結(jié)束標(biāo)記全部可以省略。下面簡單介紹這三種類型各包括哪些HTML5新元素。

第一,不允許寫結(jié)束標(biāo)記的元素有:area、base、br、col、command、embed、hr、img、input、keygen、link、meta、param、source、track、wbr。

第二,可以省略結(jié)束標(biāo)記的元素有:li、dt、dd、p、rt、rp、optgroup、option、colgroup、thead、tbody、tfoot、tr、td、th。

第三,可以省略全部標(biāo)記的元素有:html、head、body、colgroup、tbody。

提示:不允許寫結(jié)束標(biāo)記的元素是指,不允許使用開始標(biāo)記與結(jié)束標(biāo)記將元素括起來的形式,只允許使用<元素/>的形式進(jìn)行書寫。例如:

 錯誤的書寫方式

        <br></br>

 正確的書寫方式

        <br/>

HTML5之前的版本中<br>這種寫法可以繼續(xù)沿用。

可以省略全部標(biāo)記的元素是指元素可以完全被省略。注意,該元素還是以隱式的方式存在的。例如,將body元素省略時,它在文檔結(jié)構(gòu)中還是存在的,可以使用document.body進(jìn)行訪問。

2.布爾值

對于布爾型屬性,如disabled與readonly等,當(dāng)只寫屬性而不指定屬性值時,表示屬性值為true;如果屬性值為false,可以不使用該屬性。另外,要想將屬性值設(shè)定為true,也可以將屬性名設(shè)定為屬性值,或?qū)⒖兆址O(shè)定為屬性值。

【示例1】下面是幾種正確的書寫方法:

3.屬性值

屬性值可以加雙引號,也可以加單引號。HTML5在此基礎(chǔ)上做了一些改進(jìn),當(dāng)屬性值不包括空字符串、<、>、=、單引號、雙引號等字符時,屬性值兩邊的引號可以省略。

【示例2】下面寫法都是合法的:

    <input type="text">
    <input type='text'>
    <input type=text>
主站蜘蛛池模板: 乌拉特中旗| 南乐县| 昌黎县| 武威市| 漯河市| 林芝县| 额尔古纳市| 祥云县| 大安市| 安新县| 安徽省| 珠海市| 平塘县| 宜兰县| 西乡县| 尼玛县| 定西市| 长宁县| 大城县| 台江县| 普安县| 德清县| 镇江市| 永和县| 光泽县| 张家口市| 正安县| 苏尼特左旗| 遵义市| 淮南市| 和田县| 灌阳县| 青阳县| 绩溪县| 自贡市| 法库县| 永兴县| 积石山| 漳浦县| 南澳县| 囊谦县|