HTML5的語(yǔ)法變化
在HTML5之前幾乎沒有符合標(biāo)準(zhǔn)規(guī)范的Web瀏覽器。在這種情況下:各個(gè)瀏覽器之間的互相兼容性和互相操作性,在很大程度上取決于網(wǎng)站建設(shè)開發(fā)者的努力,而瀏覽器本身始終是存在缺陷的。
HTML語(yǔ)法是在SGML語(yǔ)言的基礎(chǔ)上建立的。但是SGML語(yǔ)法很復(fù)雜,要開發(fā)能夠解析SGML語(yǔ)法的程序也很不容易,所以很多瀏覽器都不包含SGML分析器。雖然HTML基本上遵從SGML語(yǔ)法,但是對(duì)于HTML的執(zhí)行在各個(gè)瀏覽器之間沒有一個(gè)統(tǒng)一的標(biāo)準(zhǔn)。所以HTML5要為之努力,要有實(shí)現(xiàn)各瀏覽器之間兼容的標(biāo)準(zhǔn)。
SGML( Standard Generalized Markup Language,標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言)是現(xiàn)時(shí)常用的超文本格式的最高層次標(biāo)準(zhǔn),是可以定義標(biāo)記語(yǔ)言的元語(yǔ)言,甚至可以定義不必采用< >的常規(guī)方式。SGML因其復(fù)雜而難以普及。
HTML5的意圖是要把Web上存在的各種問題一并解決。那么Web上存在哪些問題? HTML5是如何解決這些問題的昵?
瀏覽器之間的兼容性。解決方法:HTML5分析了各個(gè)瀏覽器的特點(diǎn)和功能,然后以此為基礎(chǔ),要求這些瀏覽器所有內(nèi)部功能符合一個(gè)通用標(biāo)準(zhǔn)。這樣,各瀏覽器都能正常運(yùn)行的可能性大大提高。例如,IE6版本下的盒子模型和其他瀏覽器的盒子模型是不同的,在IE9以及后面的版本中,舊瀏覽器也更加愿意和其他瀏覽器一起按照HTML5的標(biāo)淮來(lái)進(jìn)行設(shè)計(jì)。
文檔結(jié)構(gòu)不夠明確。解決方法:HTML5追加了很多跟結(jié)構(gòu)相關(guān)的元素。這些元素都是語(yǔ)義化很強(qiáng)的標(biāo)簽,只需要看見標(biāo)簽即可知曉標(biāo)簽內(nèi)部的內(nèi)容。
Web應(yīng)用程序功能較少。解決方法:HTML5已經(jīng)開始提供各類Web應(yīng)用上的新功能,各大瀏覽器廠商也在快速封裝這些API和功能,HTML5已經(jīng)使Web富應(yīng)用的實(shí)現(xiàn)變成了可能。
點(diǎn)擊加載更多評(píng)論>>