Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
文本標(biāo)記語(yǔ)言(英語(yǔ):HyperText Markup Language,簡(jiǎn)稱:HTML)是一種用于創(chuàng)建網(wǎng)頁(yè)的標(biāo)準(zhǔn)標(biāo)記語(yǔ)言。HTML是一種基礎(chǔ)技術(shù),常與CSS、JavaScript一起被眾多網(wǎng)站用于設(shè)計(jì)令人賞心悅目的網(wǎng)頁(yè)、網(wǎng)頁(yè)應(yīng)用程序以及移動(dòng)應(yīng)用程序的用戶界面。網(wǎng)頁(yè)瀏覽器可以讀取HTML文件,并將其渲染成可視化網(wǎng)頁(yè)。HTML描述了一個(gè)網(wǎng)站的結(jié)構(gòu)語(yǔ)義隨著線索的呈現(xiàn),使之成為一種標(biāo)記語(yǔ)言而非編程語(yǔ)言。
HTML元素是構(gòu)建網(wǎng)站的基石。HTML允許嵌入圖像與對(duì)象,并且可以用于創(chuàng)建交互式表單,它被用來(lái)結(jié)構(gòu)化信息——例如標(biāo)題、段落和列表等等,也可用來(lái)在一定程度上描述文檔的外觀和語(yǔ)義。HTML的語(yǔ)言形式為尖括號(hào)包圍的HTML元素(如<html>),瀏覽器使用HTML標(biāo)簽和腳本來(lái)詮釋網(wǎng)頁(yè)內(nèi)容,但不會(huì)將它們顯示在頁(yè)面上。
HTML可以嵌入如JavaScript的腳本語(yǔ)言,它們會(huì)影響HTML網(wǎng)頁(yè)的行為。網(wǎng)頁(yè)瀏覽器也可以引用層疊樣式表(CSS)來(lái)定義文本和其它元素的外觀與布局。維護(hù)HTML和CSS標(biāo)準(zhǔn)的組織萬(wàn)維網(wǎng)聯(lián)盟(W3C)鼓勵(lì)人們使用CSS替代一些用于表現(xiàn)的HTML元素。
歷史
W3C制作的早期HTML標(biāo)志
發(fā)展
蒂姆·伯納斯-李
1980年,物理學(xué)家蒂姆·伯納斯-李在歐洲核子研究中心(CERN)在承包工程期間,為使CERN的研究人員使用并共享文檔,他提出并創(chuàng)建原型系統(tǒng)ENQUIRE。1989年,伯納斯-李在一份備忘錄中提出一個(gè)基于互聯(lián)網(wǎng)的超文本系統(tǒng)。他規(guī)定HTML并在1990年底寫出瀏覽器和服務(wù)器軟件。同年,伯納斯-李與CERN的數(shù)據(jù)系統(tǒng)工程師羅伯特·卡里奧聯(lián)合為項(xiàng)目申請(qǐng)資助,但未被CERN正式批準(zhǔn)。在他的個(gè)人筆記中伯納斯-李列舉“一些使用超文本的領(lǐng)域”,并把百科全書列為首位。
HTML的首個(gè)公開(kāi)描述出現(xiàn)于一個(gè)名為“HTML標(biāo)簽”的文件中,由蒂姆·伯納斯-李于1991年底提及。它描述18個(gè)元素,包括HTML初始的、相對(duì)簡(jiǎn)單的設(shè)計(jì)。除了超鏈接標(biāo)簽外,其他設(shè)計(jì)都深受CERN內(nèi)部一個(gè)以標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言(SGML)為基礎(chǔ)的文件格式SGMLguid的影響。這些元素在HTML 4中仍有11個(gè)存在。
伯納斯-李認(rèn)為HTML是SGML的一個(gè)應(yīng)用程序。1993年中期互聯(lián)網(wǎng)工程任務(wù)組(IETF)發(fā)布首個(gè)HTML規(guī)范的提案:“超文本標(biāo)記語(yǔ)言(HTML)”互聯(lián)網(wǎng)草案,由伯納斯-李與丹·康納利(英語(yǔ):Dan Connolly (computer scientist))撰寫。其中包括一個(gè)SGML文檔類型定義來(lái)定義語(yǔ)法。草案于6個(gè)月后過(guò)期,不過(guò)值得注意的是其對(duì)NCSA Mosaic瀏覽器自定義標(biāo)簽從而將在線圖像嵌入的行為的認(rèn)可,這反映IETF把標(biāo)準(zhǔn)立足于成功原型的理念。同樣,戴夫·拉格特(英語(yǔ):Dave Raggett)在1993年末提出的與之競(jìng)爭(zhēng)的互聯(lián)網(wǎng)草案“HTML+(超文本標(biāo)記格式)”建議規(guī)范已經(jīng)實(shí)現(xiàn)的功能,如表格與填寫表單。
在HTML和HTML+的草案于1994年初到期后,IETF創(chuàng)建一個(gè)HTML工作組,并在1995年完成"HTML 2.0",這是第一個(gè)旨在成為對(duì)其后續(xù)實(shí)現(xiàn)標(biāo)準(zhǔn)的依據(jù)的HTML規(guī)范。
在IETF的主持下,HTML標(biāo)準(zhǔn)的進(jìn)一步發(fā)展因競(jìng)爭(zhēng)利益而遭受停滯。自1996年起,HTML規(guī)范一直由萬(wàn)維網(wǎng)聯(lián)盟(W3C)維護(hù),并由商業(yè)軟件廠商出資。不過(guò)在2000年,HTML也成為國(guó)際標(biāo)準(zhǔn)(ISO/ IEC15445:2000)。HTML 4.01于1999年末發(fā)布,進(jìn)一步的勘誤版本于2001年發(fā)布。2004年,網(wǎng)頁(yè)超文本應(yīng)用技術(shù)工作小組(WHATWG)開(kāi)始開(kāi)發(fā)HTML5,并在2008年與W3C共同交付,2014年10月28日完成標(biāo)準(zhǔn)化。
版本時(shí)間線
1995年11月24日
HTML 2.0作為IETF RFC 1866發(fā)布。追加RFC的附加功能:
1995年11月25日:RFC 1867(基于表單的文件上傳)
1996年5月:RFC 1942(表格)
1996年8月:RFC 1980(客戶端圖像映射)
1997年1月:RFC 2070(國(guó)際化)
1997年1月14日
HTML 3.2作為W3C推薦標(biāo)準(zhǔn)發(fā)布。這是首個(gè)完全由W3C開(kāi)發(fā)并標(biāo)準(zhǔn)化的版本,因IETF于1996年9月12日關(guān)閉它的HTML工作組。
最初代號(hào)為“威爾伯”(Wilbur),HTML 3.2完全去除數(shù)學(xué)公式,協(xié)調(diào)各種專有擴(kuò)展,并采用網(wǎng)景設(shè)計(jì)的大多數(shù)視覺(jué)標(biāo)記標(biāo)簽。由于兩家公司達(dá)成了協(xié)議,網(wǎng)景的閃爍元素(英語(yǔ):blink element)和微軟的滾動(dòng)元素(英語(yǔ):marquee element)被移除。HTML對(duì)數(shù)學(xué)公式的支持最后成為另外一種被稱為MathML的標(biāo)準(zhǔn)。
1997年12月18日
HTML 4.0作為W3C推薦標(biāo)準(zhǔn)發(fā)布。它提供三種變化:
嚴(yán)格,過(guò)時(shí)的元素被禁止。
過(guò)渡,過(guò)時(shí)的元素被允許。
框架集,大多只與框架相關(guān)的元素被允許。
最初代號(hào)“美洲獅”(Cougar), HTML 4.0采用許多特定瀏覽器的元素類型和屬性,并試圖淘汰網(wǎng)景的視覺(jué)標(biāo)記功能,將其標(biāo)記為不贊成使用。HTML 4是遵循ISO 8879 - SGML的SGML應(yīng)用程序。
1998年4月24日
HTML 4.0進(jìn)行微調(diào),不增加版本號(hào)。
1999年12月24日
HTML 4.01作為W3C推薦標(biāo)準(zhǔn)發(fā)布。它同樣提供三種變化,最終勘誤版于2001年5月12日發(fā)布。
2000年5月
ISO/IEC 15445:2000("ISO HTML",基于HTML 4.01嚴(yán)格版)作為ISO/IEC國(guó)際標(biāo)準(zhǔn)發(fā)布。在ISO中這一標(biāo)準(zhǔn)位于ISO/IEC JTC 1/SC 34(英語(yǔ):ISO/IEC JTC 1/SC 34)域(ISO/IEC聯(lián)合技術(shù)委員會(huì)1、小組委員會(huì)34 – 文檔描述與處理語(yǔ)言)。
2014年10月28日
HTML 5作為W3C推薦標(biāo)準(zhǔn)發(fā)布。
草案時(shí)間線
HTML5的Logo
1991年10月
HTML標(biāo)簽,一個(gè)非正式CERN文件首次公開(kāi)18個(gè)HTML標(biāo)簽。
1992年6月
HTML DTD的首個(gè)非正式草案, 后續(xù)有七個(gè)修訂版(7月15日,8月6日,8月18日,11月17日,11月19日,11月20日,11月22日)。
1992年11月
HTML DTD 1.1(首個(gè)版本號(hào),基于RCS修訂版,版本號(hào)從1.1開(kāi)始而非1.0),非正式草案。
1993年6月
超文本標(biāo)記語(yǔ)言由IETF IIIR工作小組作為互聯(lián)網(wǎng)草案(一個(gè)粗略的建議標(biāo)準(zhǔn))。在被第二版代一個(gè)月后,IETF又發(fā)布6個(gè)草案,最終在RFC1866中發(fā)布HTML 2.0。
1993年11月
HTML+由IETF作為互聯(lián)網(wǎng)草案發(fā)布,是超文本標(biāo)記語(yǔ)言草案的一個(gè)競(jìng)爭(zhēng)性提案。它于1994年5月到期。
1995年4月 (1995年3月編寫)
HTML 3.0[33]被提議作為IETF的標(biāo)準(zhǔn),但直到提案在五個(gè)月過(guò)期后(1995年9月28日)仍沒(méi)有進(jìn)一步的行動(dòng)。它包含許多拉格特HTML+提案的功能,如對(duì)表格的支持、圍繞數(shù)據(jù)的文本流和復(fù)雜的數(shù)學(xué)公式的顯示。W3C開(kāi)始開(kāi)發(fā)自己的Arena瀏覽器作為HTML 3和層疊樣式表的試驗(yàn)臺(tái)(英語(yǔ):Test bed),但HTML 3.0并沒(méi)有獲得成功。瀏覽器廠商,包括微軟和網(wǎng)景,選擇實(shí)現(xiàn)HTML3草案功能的不同子集并引入它們自己的插件(見(jiàn)瀏覽器大戰(zhàn))。
2008年1月
HTML5由W3C作為工作草案(鏈接)發(fā)布。雖然HTML5的語(yǔ)法非常類似于SGML,但它已經(jīng)放棄任何成為SGML應(yīng)用程序的嘗試,除了一種替代的基于XML的HTML5序列,它已明確定義自己的“HTML”序列。
2011年 HTML5 – 最終征求
2011年5月,工作小組將HTML5推進(jìn)至“最終征求”(Last Call)階段,邀請(qǐng)W3C社區(qū)內(nèi)外人士以確認(rèn)本規(guī)范的技術(shù)可靠性。W3C開(kāi)發(fā)一套綜合性測(cè)試套件來(lái)實(shí)現(xiàn)完整規(guī)范的廣泛交互操作性,完整規(guī)范的目標(biāo)日期為2014年。2011年1月,WHATWG將其“HTML5”活動(dòng)標(biāo)準(zhǔn)重命名為“HTML”。W3C仍然繼續(xù)其發(fā)布HTML5的項(xiàng)目。
2012年 HTML5 – 候選推薦
2012年7月,WHATWG和W3C的工作產(chǎn)生一定程度的分離。W3C繼續(xù)HTML5規(guī)范工作,重點(diǎn)放在單一明確的標(biāo)準(zhǔn)上,這被WHATWG稱為“快照”。WHATWG組織則將HTML5作為一個(gè)“活動(dòng)標(biāo)準(zhǔn)”(Living Standard)。活動(dòng)標(biāo)準(zhǔn)的概念是從未完成但永遠(yuǎn)保持更新與改進(jìn),可以添加新特性,但功能點(diǎn)不會(huì)被刪除。
2012年12月,W3C指定HTML5作為候選推薦階段。 該階段的標(biāo)準(zhǔn)為“兩個(gè)100%完成,完全實(shí)現(xiàn)交互操作”。
2014年 HTML5 – 提案推薦與推薦
2014年9月,HTML5進(jìn)入提案推薦階段。
2014年10月28日,HTML5作為穩(wěn)定W3C推薦標(biāo)準(zhǔn)發(fā)布,這意味著HTML5的標(biāo)準(zhǔn)化已經(jīng)完成。
XHTML版本
XHTML是使用XML 1.0改寫自HTML 4.01的獨(dú)立語(yǔ)言。它不再被作為單獨(dú)標(biāo)準(zhǔn)開(kāi)發(fā)。
XHTML 1.0, 2000年1月26日作為W3C推薦標(biāo)準(zhǔn)發(fā)布。修訂版于2002年8月1日發(fā)布,它提供與HTML 4.0和4.01相同的三個(gè)變化,這些變化被重新在XML中制定。
XHTML 1.1,基于XHTML 1.0 嚴(yán)格版,2001年5月31日 作為W3C推薦標(biāo)準(zhǔn)發(fā)布。修訂版可使用模塊化XHTML的模塊,2001年4月10日作為W3C推薦標(biāo)準(zhǔn)發(fā)布。
XHTML 2.0為工作草案,但為支持HTML5與XHTML5的工作,此草案被放棄。 XHTML 2.0與XHTML 1.x不兼容,因此更確切的說(shuō)這是一個(gè)XHTML風(fēng)格的新語(yǔ)言而不是XHTML 1.x的更新。
在HTML5草案中規(guī)定一個(gè)XHTML語(yǔ)法,稱為“XHTML5.1”。
標(biāo)記
HTML標(biāo)記包含標(biāo)簽(及其屬性)、基于字符的數(shù)據(jù)類型、字符引用和實(shí)體引用等幾個(gè)關(guān)鍵部分。HTML標(biāo)簽是最常見(jiàn)的,通常成對(duì)出現(xiàn),比如<h1>與</h1>。這些成對(duì)出現(xiàn)的標(biāo)簽中,第一個(gè)標(biāo)簽是開(kāi)始標(biāo)簽,第二個(gè)標(biāo)簽是結(jié)束標(biāo)簽。兩個(gè)標(biāo)簽之間為元素的內(nèi)容,有些標(biāo)簽沒(méi)有內(nèi)容,為空元素,如<img>。
HTML另一個(gè)重要組成部分為文檔類型聲明(英語(yǔ):document type declaration),這會(huì)觸發(fā)標(biāo)準(zhǔn)模式渲染。
以下是一個(gè)經(jīng)典的Hello World程序的例子:
<!DOCTYPE html>
<html>
<head>
<title>This is a title</title>
</head>
<body>
<p>Hello world!</p>
</body>
</html>
<html>和</html>之間的文本描述網(wǎng)頁(yè),<body>和</body>之間的文本為可視頁(yè)面內(nèi)容。標(biāo)記文本<title>This is a title</title>定義了瀏覽器的頁(yè)面標(biāo)題。
文檔標(biāo)記類型<!DOCTYPE html>用于HTML5。 如果未進(jìn)行聲明,瀏覽器會(huì)使用“怪異模式”進(jìn)行渲染。
元素
HTML文檔由嵌套的HTML元素構(gòu)成。它們用HTML標(biāo)簽表示,包含于尖括號(hào)中,如<p>
在一般情況下,一個(gè)元素由一對(duì)標(biāo)簽表示:“開(kāi)始標(biāo)簽”<p>與“結(jié)束標(biāo)簽”</p>。元素如果含有文本內(nèi)容,就被放置在這些標(biāo)簽之間。
在開(kāi)始與結(jié)束標(biāo)簽之間也可以封裝另外的標(biāo)簽,包括標(biāo)簽與文本的混合。這些嵌套元素是父元素的子元素。
開(kāi)始標(biāo)簽也可包含標(biāo)簽屬性。這些屬性有諸如標(biāo)識(shí)文檔區(qū)段、將樣式信息綁定到文檔演示和為一些如<img>等的標(biāo)簽嵌入圖像、引用圖像來(lái)源等作用。
一些元素如換行符<br>,不允許嵌入任何內(nèi)容,無(wú)論是文字或其他標(biāo)簽。這些元素只需一個(gè)單一的空標(biāo)簽(類似于一個(gè)開(kāi)始標(biāo)簽),無(wú)需結(jié)束標(biāo)簽。
許多標(biāo)簽是可選的,尤其是那些很常用的段落元素<p>的閉合端標(biāo)簽。HTML瀏覽器或其他媒介可以從上下文識(shí)別出元素的閉合端以及由HTML標(biāo)準(zhǔn)所定義的結(jié)構(gòu)規(guī)則。這些規(guī)則非常復(fù)雜,不是大多數(shù)HTML編碼人員可以完全理解的。
因此,一個(gè)HTML元素的一般形式為:<tag attribute1="value1" attribute2="value2">''content''</tag>。一些HTML元素被定義為空元素,其形式為<tag attribute1="value1" attribute2="value2">。空元素不能封裝任何內(nèi)容。例如<br>標(biāo)簽或內(nèi)聯(lián)標(biāo)簽<img>。一個(gè)HTML元素的名稱即為標(biāo)簽使用的名稱。注意,結(jié)束標(biāo)簽的名稱前面有一個(gè)斜杠“/”,空元素不需要也不允許結(jié)束標(biāo)簽。如果元素屬性未標(biāo)明,則使用其默認(rèn)值。
例子
HTML文檔的頁(yè)眉:<head>...</head>。標(biāo)題被包含在頭部,例如:
<head>
<title>The Title</title>
</head>
標(biāo)題:HTML標(biāo)題由<h1>到<h6>六個(gè)標(biāo)簽構(gòu)成,字體由大到小遞減:
<h1>Heading level 1</h1>
<h2>Heading level 2</h2>
<h3>Heading level 3</h3>
<h4>Heading level 4</h4>
<h5>Heading level 5</h5>
<h6>Heading level 6</h6>
段落:
<p>第一段</p> <p>第二段</p>
換行:<br>。<br>與<p>之間的差異是br換行但不改變頁(yè)面的語(yǔ)義結(jié)構(gòu),而p部分的頁(yè)面成段。
<p>這是<br>一個(gè)<br>使用換行<br>段落</p>
鏈接:使用<a>標(biāo)簽來(lái)創(chuàng)建鏈接。href屬性包含鏈接的URL地址。
<a >中文維基百科的連結(jié)!</a>
注釋:
<!-- This is a comment -->
注釋有助于理解標(biāo)記,但它不會(huì)在網(wǎng)頁(yè)上顯示。
HTML中存在以下幾種類型的標(biāo)記元素:
用于文本的結(jié)構(gòu)式標(biāo)記
例如,<h2>羽毛球</h2>將“羽毛球”定義為二級(jí)標(biāo)題。結(jié)構(gòu)式標(biāo)記不指示任何特定的渲染,但大多數(shù)網(wǎng)頁(yè)瀏覽器都會(huì)采用元素格式的默認(rèn)樣式。要在內(nèi)容上實(shí)現(xiàn)進(jìn)一步的風(fēng)格可以使用層疊樣式表(CSS)。
用于文本外觀的表現(xiàn)式標(biāo)記,不論其目的
例如,<b>粗體</b>表示視覺(jué)輸出設(shè)備應(yīng)將文本“粗體”加粗,但如果設(shè)備無(wú)法做到這一點(diǎn)(如朗讀文本的聽(tīng)覺(jué)設(shè)備),就不會(huì)發(fā)生什么現(xiàn)象。在這種情況下,<b>粗體</b>與''斜體''也可能有相同的視覺(jué)效果,但在本質(zhì)上它們更加語(yǔ)義化。如同<strong>加強(qiáng)文字</strong>與<em>強(qiáng)調(diào)文字</em>的區(qū)別。為支持CSS的使用,大多數(shù)表現(xiàn)式標(biāo)記在HTML 4.0規(guī)范中不再被推薦使用。
超文本標(biāo)記使文檔的一部分鏈接到其他文檔
錨元素在文檔中創(chuàng)建超鏈接,其href屬性設(shè)置鏈接的目標(biāo)URL。例如:HTML標(biāo)記<a 渲染為超鏈接。要將圖片渲染為超鏈接,img元素要作為內(nèi)容插入到a元素中:<a ><img src="image.gif" alt="說(shuō)明文字" width="50" height="50" border="0"></a>。
屬性
大多數(shù)元素的屬性以“名稱-值”的形式成對(duì)出現(xiàn),由“=”分離并寫在開(kāi)始標(biāo)簽元素名之后。值一般由單引號(hào)或雙引號(hào)包圍,有些值的內(nèi)容包含特定字符,在HTML中可以去掉引號(hào)(XHTML不行)。不加引號(hào)的屬性值被認(rèn)為是不安全的[58]。有些屬性無(wú)需成對(duì)出現(xiàn),僅存在于開(kāi)始標(biāo)簽中即可影響元素[6],如img 元素的ismap 屬性。
許多元素存在一些共通的屬性:
id屬性為元素提供了在全文檔內(nèi)的唯一標(biāo)識(shí)。它用于識(shí)別元素,以便樣式表可以改變其表現(xiàn)屬性,腳本可以改變、顯示或刪除其內(nèi)容或格式化。對(duì)于添加到頁(yè)面的URL,它為元素提供了一個(gè)全局唯一標(biāo)識(shí),通常為頁(yè)面的子章節(jié)。例如,ID "屬性"對(duì)于https://zh.wikipedia.org/wiki/HTML#屬性
class屬性提供一種將類似元素分類的方式。常被用于語(yǔ)義化或格式化。例如,一個(gè)HTML文檔可指定類<class="標(biāo)記">來(lái)表明所有具有這一類值的元素都從屬于文檔的主文本。格式化后,這樣的元素可能會(huì)聚集在一起,并作為頁(yè)面腳注而不會(huì)出現(xiàn)在HTML代碼中。類屬性也被用于微格式的語(yǔ)義化。類值也可進(jìn)行多聲明。如<class="標(biāo)記 重要">將元素同時(shí)放入標(biāo)記與重要兩類中。
style屬性可以將表現(xiàn)性質(zhì)賦予一個(gè)特定元素。比起使用id或class 屬性從樣式表中選擇元素,“style”被認(rèn)為是一個(gè)更好的做法,盡管有時(shí)這對(duì)一個(gè)簡(jiǎn)單、專用或特別的樣式顯得太繁瑣。
title屬性用于給元素一個(gè)附加的說(shuō)明。 大多數(shù)瀏覽器中這一屬性顯示為工具提示(英語(yǔ):Tooltip)。
lang屬性用于識(shí)別元素內(nèi)容的語(yǔ)言,它可能與文檔的主要語(yǔ)言不同。例如,在中文文檔中:
<p>法語(yǔ)<span lang="fr">c'est la vie</span>在法國(guó)的應(yīng)用很普遍,意為“這就是生活” 。<p>
縮寫元素abbr可用于說(shuō)明一些屬性:
<abbr id="ID" class="術(shù)語(yǔ)" style="color:purple;" title="超文本標(biāo)記語(yǔ)言">HTML</abbr>
這個(gè)例子顯示為HTML; 在大多數(shù)瀏覽器中,光標(biāo)指向縮寫時(shí)會(huì)顯示標(biāo)題文字“超文本標(biāo)記語(yǔ)言”。
大多數(shù)元素采用與語(yǔ)言相關(guān)的屬性dir 來(lái)指定文字方向,如 "rtl"采用從右到左的文本,比如阿拉伯語(yǔ)、波斯語(yǔ)以及希伯來(lái)語(yǔ)。
字符與實(shí)體引用
參見(jiàn):XML與HTML字符實(shí)體引用列表和Unicode與HTML
在4.0版本中,HTML定義了一系列共252個(gè)字符實(shí)體引用和1,114,050個(gè)字元值參考。二者都支持單個(gè)字符通過(guò)簡(jiǎn)單的標(biāo)記寫入。文字字符與其對(duì)應(yīng)的標(biāo)記渲染的效果相同。
用這種方式“轉(zhuǎn)義”字符的能力允許字符<與&(當(dāng)分別被寫作<和&時(shí))被理解為字符數(shù)據(jù)而不是標(biāo)記。例如<通常為標(biāo)簽的開(kāi)頭,&通常為字符實(shí)體引用與數(shù)字字符引用的開(kāi)頭;&或&或&將&作為元素的內(nèi)容或?qū)傩缘闹怠kp引號(hào)字符"在不被用于屬性值的標(biāo)示時(shí)必須轉(zhuǎn)義為"或"或";相等地,當(dāng)于單引號(hào)字符'不被用于屬性值的標(biāo)示時(shí),也必須轉(zhuǎn)義為'或'(或HTML5與XHTML文檔中的')。
如果文檔作者忽略了轉(zhuǎn)義這樣的字符,一些瀏覽器會(huì)嘗試通過(guò)上下文猜測(cè)他們的意圖。如果結(jié)果仍為無(wú)效標(biāo)記,這會(huì)使其他瀏覽器或用戶代理難以訪問(wèn)到該文檔,并使它們嘗試使用搜索和索引來(lái)解析該文檔。
那些難以輸入或不在該文檔字符編碼中的字符也可通過(guò)轉(zhuǎn)義來(lái)實(shí)現(xiàn)。例如通常只在西歐或南美的鍵盤出現(xiàn)的重音符e(é),可以在HTML文檔中用作實(shí)體引用é 或數(shù)字引用é或é。 諸如UTF-8的Unicode字符編碼與所有的現(xiàn)代瀏覽器兼容并允許直接訪問(wèn)全球書寫系統(tǒng)幾乎所有的字符 。
數(shù)據(jù)類型
HTML為元素內(nèi)容定義了多種數(shù)據(jù)類型,如腳本數(shù)據(jù)、樣式表數(shù)據(jù)以及許多屬性值的類型,包括ID、名稱、URI、數(shù)字長(zhǎng)度單位、語(yǔ)言、媒體描述符顏色、字符編碼、日期和時(shí)間等等。所有這些數(shù)據(jù)類型都是字符數(shù)據(jù)的特殊化。
文檔類型聲明
HTML文檔需要以文檔類型聲明(英語(yǔ):document type declaration)(英語(yǔ)非正式說(shuō)法“doctype”)開(kāi)頭。在瀏覽器中,文檔類型聲明有助于確定渲染模式——特別是是否使用怪異模式。
文檔類型聲明的初衷是通過(guò)基于文檔類型定義(DTD)的SGML工具來(lái)解析并驗(yàn)證HTML文檔。
HTML5未定義DTD,所以在HTML5中文檔類型聲明更為簡(jiǎn)短:
<!DOCTYPE html>
HTML 4文檔類型聲明舉例:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
該聲明引用HTML 4.01“嚴(yán)格”版的DTD。基于SGML的驗(yàn)證器可讀取DTD,正確解析這些文檔并執(zhí)行驗(yàn)證。在現(xiàn)代瀏覽器中,一個(gè)有效的文檔類型激活標(biāo)準(zhǔn)模式有別于怪異模式。
另外,HTML 4.01提供過(guò)渡型與框架集型的DTD。過(guò)渡型涵蓋最廣,它可整合當(dāng)前以及老舊或“過(guò)時(shí)”的標(biāo)簽,而嚴(yán)格型DTD排除了過(guò)時(shí)的標(biāo)簽。框架集擁有所有構(gòu)建框架所需的標(biāo)簽以及過(guò)渡型的標(biāo)簽。
語(yǔ)義化HTML
語(yǔ)義化HTML是一種編寫HTML的方式,它強(qiáng)調(diào)編碼信息的含義在其格式(樣子)之上。HTML從創(chuàng)立之初就包括語(yǔ)義化標(biāo)記,但也包括標(biāo)識(shí)性標(biāo)記如<font>、<i>和<center>標(biāo)簽。也存在一些語(yǔ)義上中立的span與div標(biāo)簽。自1990年代末層疊樣式表開(kāi)始應(yīng)用于大多數(shù)瀏覽器,網(wǎng)頁(yè)制作者就被鼓勵(lì)使用CSS以便呈現(xiàn)與內(nèi)容分離。
在2001年一次對(duì)語(yǔ)義網(wǎng)的討論中,蒂姆·伯納斯-李等人給出了一種的方法,使智能軟件“代理人”可能有一天會(huì)自動(dòng)抓取網(wǎng)頁(yè)進(jìn)行查找、過(guò)濾并將之前不相關(guān)的聯(lián)系起來(lái)。這種代理甚至在現(xiàn)在也不普遍,但一些Web 2.0、混搭和價(jià)格比較網(wǎng)站的想法可能會(huì)結(jié)束。這些網(wǎng)頁(yè)應(yīng)用程序的混合與伯納斯-李的語(yǔ)義代理人的之間主要區(qū)別基于以下事實(shí):當(dāng)前的聚合與信息混合通常由網(wǎng)頁(yè)開(kāi)發(fā)者設(shè)計(jì),他們?cè)缫阎谰W(wǎng)絡(luò)位置和他們希望混搭、比較與結(jié)合的特定數(shù)據(jù)的API語(yǔ)義。
網(wǎng)頁(yè)代理的一個(gè)重要類型是網(wǎng)絡(luò)爬蟲(chóng)或搜索引擎蜘蛛。這些軟件代理依賴于它們發(fā)現(xiàn)的網(wǎng)頁(yè)的語(yǔ)義清晰度,因?yàn)樗鼈円惶煲褂酶鞣N技術(shù)與算法來(lái)讀取和索引數(shù)百萬(wàn)個(gè)網(wǎng)頁(yè)并給網(wǎng)頁(yè)用戶提供搜索工具,沒(méi)有這些萬(wàn)維網(wǎng)的有效性就會(huì)大大降低。
為使搜索引擎蜘蛛評(píng)估它們?cè)贖TML文檔中發(fā)現(xiàn)的文本片段的重要性,也為那些創(chuàng)建標(biāo)記等混合的人與更多的自動(dòng)化代理工具,HTML中的語(yǔ)義結(jié)構(gòu)需要廣泛一致地應(yīng)用從而將文本的含義呈現(xiàn)給瀏覽者。
表示性標(biāo)記在當(dāng)前的HTML和XHTML推薦中不被鼓勵(lì)使用,HTML5中則被視為非法。
好的語(yǔ)義化HTML也改善了網(wǎng)頁(yè)文檔的可訪問(wèn)性。例如,當(dāng)屏幕閱讀器或音頻瀏覽器可以正確判定一個(gè)文檔的結(jié)構(gòu)時(shí),視覺(jué)障礙用戶不會(huì)再因閱讀重復(fù)或無(wú)關(guān)的信息而浪費(fèi)時(shí)間。
分發(fā)
HTML文檔分發(fā)的方法和其他計(jì)算機(jī)文件相同。不過(guò),它們最常通過(guò)網(wǎng)頁(yè)服務(wù)器的超文本傳輸協(xié)議或電子郵件傳輸。
HTTP
萬(wàn)維網(wǎng)主要由從服務(wù)器通過(guò)HTTP協(xié)議向?yàn)g覽器發(fā)送的HTML文檔組成。但是,HTTP也可以被用于傳輸HTML之外的數(shù)據(jù),例如圖像、聲音和其他內(nèi)容。為使瀏覽器了解如何處理接收到的文檔,在傳輸文檔時(shí)必須同時(shí)傳遞文件類型。這種元數(shù)據(jù)包含MIME類型(對(duì)于HTML 4.01或更早版本是text/html,而對(duì)于XHTML 1.0或之后的版本是application/xhtml+xml),以及字符編碼(參見(jiàn)HTML字符編碼方式)。
在現(xiàn)在的瀏覽器中,和HTML文檔一起發(fā)送的MIME類型影響文檔的解讀方式。和XHTML MIME類型一起發(fā)送的文檔被認(rèn)為是良構(gòu)的XML,而語(yǔ)法錯(cuò)誤會(huì)導(dǎo)致瀏覽器無(wú)法呈現(xiàn)文檔。完全相同的文檔如果和HTML MIME類型一起發(fā)送,則可能被正常顯示,因?yàn)闉g覽器對(duì)HTML的語(yǔ)法檢查更加松懈些。
W3C的推薦指出,遵循規(guī)定的推薦指引的XHTML 1.0文檔可標(biāo)記二者任一的MIME類型。XHTML 1.1還指出,XHTML 1.1文檔應(yīng)標(biāo)有兩種MIME類型。
HTML郵件
大多數(shù)圖形電子郵件客戶端允許使用HTML的子集(經(jīng)常界限不清)提供格式化和無(wú)法使用純文本的語(yǔ)義標(biāo)記。這可能包括印刷信息,如彩色標(biāo)題、強(qiáng)調(diào)和引用文本、內(nèi)嵌圖片和圖表等。許多這樣的客戶包含一個(gè)編寫HTML電子郵件消息的圖形用戶界面編輯器和一個(gè)用于顯示的渲染引擎。在郵件中使用HTML受到了一些兼容性的批評(píng),由于一些盲人或具有視覺(jué)障礙的人的訪問(wèn)問(wèn)題,這種方式有利于偽裝的釣魚攻擊。因其消息大小超過(guò)明文,所以它可混淆垃圾郵件過(guò)濾器。
命名規(guī)則
最常用的計(jì)算機(jī)文件擴(kuò)展名為.html,通用縮寫為.htm。它起源于某些早期操作系統(tǒng)與文件系統(tǒng),如DOS以及FAT數(shù)據(jù)結(jié)構(gòu)的局限性,它將文件擴(kuò)展名限制為3個(gè)字母。
HTML應(yīng)用程序
HTML應(yīng)用程序(HTA;文件擴(kuò)展名".hta")是一個(gè)Microsoft Windows應(yīng)用程序,它在瀏覽器中使用HTML和動(dòng)態(tài)HTML提供應(yīng)用程序圖形界面。正規(guī)HTML文件被限制在瀏覽器的安全模型中,只能分別通過(guò)網(wǎng)頁(yè)服務(wù)器和網(wǎng)頁(yè)對(duì)象與站點(diǎn)Cookie進(jìn)行通信和操作。HTA作為完全受信任的應(yīng)用程序運(yùn)行,因此擁有更多的權(quán)限,如創(chuàng)建/編輯/刪除文件與注冊(cè)表項(xiàng)。因?yàn)樗鼈冊(cè)跒g覽器安全模式之外操作,所以HTA不能通過(guò)HTTP執(zhí)行,必須下載(就像EXE文件)并在本地文件系統(tǒng)執(zhí)行。
所見(jiàn)即所得編輯器
所見(jiàn)即所得編輯器使用圖形用戶界面(GUI)顯示HTML文檔,常常類似于文字處理器,所以用戶可以設(shè)計(jì)一切。編者面對(duì)的是文檔,而不是代碼,所以作者并不需要太多的HTML知識(shí)。這種所見(jiàn)即所得的編輯模式一直受到詬病,主要因?yàn)樗傻拇a質(zhì)量不高;也有人主張將其改變至WYSIWYM模型(所見(jiàn)即所指)。
HTML (Hypertext Markup Language)是標(biāo)準(zhǔn)標(biāo)記語(yǔ)言,是 Web 瀏覽器顯示的基礎(chǔ)。 此外,CSS(Cascading Style Sheets)等技術(shù)以及JavaScript等腳本語(yǔ)言也支持這種技術(shù)。
創(chuàng)建主頁(yè)時(shí),首先使用 HTML 確定句子的結(jié)構(gòu)并標(biāo)記它,然后設(shè)計(jì)要顯示的信息。 這是網(wǎng)頁(yè)的基礎(chǔ)。
現(xiàn)在,讓我們仔細(xì)看看可以使用少量 CSS 代碼實(shí)現(xiàn)的技術(shù)。
Web 性能改進(jìn)技術(shù)之一是屬性,允許用戶延遲加載,直到滾動(dòng)。 它還適用于嵌入 YouTube 視頻的 iframe 代碼和大尺寸圖像。loading="lazy"
XHTML
1 | <img src='image.jpg' loading='lazy' alt='代替テキスト'> |
打開(kāi)電子郵件創(chuàng)建頁(yè)面、直接撥打電話或發(fā)送短消息的技術(shù)。
XHTML
1 2 3 4 5 6 7 8 9 10 11 | <a href="mailto:{email}?subject={subject}&body={content}"> Eメールを送信 </a> <a href="tel:{phone}"> お電話ください </a> <a href="sms:{phone}?body={content}"> SMSショートメッセージを送信 </a> |
start屬性允許您自由確定列表格式的數(shù)字。
meter元素允許您使用彩色滑塊顯示數(shù)字和數(shù)量。 不需要 JavaScript 或 CSS。
通過(guò)預(yù)先在表單輸入元素中指定一些數(shù)據(jù)列表,可以將其作為候選關(guān)鍵字顯示在輸入字段中的下拉列表中。
fieldset元素允許您將 Web 窗體中的多個(gè)控件和標(biāo)簽 () 組合在一起。label
target="_blank在 中打開(kāi)的頁(yè)面將允許您訪問(wèn)原始頁(yè)面的 window.opener。 這可能會(huì)對(duì)安全性和性能產(chǎn)生負(fù)面影響,例如"原始窗口在知道之前已轉(zhuǎn)換到填充站點(diǎn)"。 為了防止這種情況,請(qǐng)包括 或 。rel="noopener"rel="noreferrer"
1 2 3 | <a href="https://markodenic.com/" target="_blank" rel="noopener"> 參考ウェブサイト </a> |
如果要在新選項(xiàng)卡中打開(kāi) HTML 文檔中的所有鏈接,可以使用元素。 在下面的示例中,兩個(gè)鏈接都在新的選項(xiàng)卡中打開(kāi)。base
若要更新網(wǎng)站的傳真,您可以通過(guò)將其添加到文件名中來(lái)在瀏覽器中下載新版本。?v=2
一種有效的技術(shù),尤其是在生產(chǎn)環(huán)境中,以確保用戶輸入新版本。
XHTML
1 | <link rel="icon" href="/favicon.ico?v=2" /> |
可以決定是否檢查元素的拼寫錯(cuò)誤的屬性。spellcheck
input type="range"允許您使用滑塊調(diào)整數(shù)字。 所選數(shù)字可以顯示在 中。input type="number"
details元素允許您創(chuàng)建僅 HTML 本機(jī)手風(fēng)琴。
mark標(biāo)記允許您使用黃色標(biāo)記突出顯示文本的一部分。
URL 鏈接的屬性允許您直接下載文件,而不是將其移動(dòng)到文件中。download
XHTML
1 2 3 | <a href='path/to/file' download> Download </a> |
使用".webp"作為圖像格式可以減小圖像大小并提高網(wǎng)站性能。
XHTML
1 2 3 4 5 6 7 8 9 10 11 | <picture> <!-- サポートされていたら.webp畫像を読み込む --> <source srcset="logo.webp" type="image/webp"> <!-- .webp畫像や<picture>タグが ブラウザにサポートされていないときの フォールバックとして --> <img src="logo.png" alt="logo"> </picture> |
poster屬性允許您指定在加載視頻或按下"播放"按鈕之前顯示的圖像。
XHTML
1 | <video poster="path/to/image"> |
在搜索框中使用時(shí),將自動(dòng)顯示"X"清除標(biāo)記以取消。type="search"
只有 HTML 可以實(shí)現(xiàn)的功能,我有很多。 我們計(jì)劃在未來(lái)添加和更新小技巧技術(shù)。
HTML是最流行的Web前端開(kāi)發(fā)技術(shù)之一,它是一種用于創(chuàng)建網(wǎng)頁(yè)和 Web 應(yīng)用程序的標(biāo)記語(yǔ)言。HTML與CSS和JavaScript結(jié)合使用以創(chuàng)建有吸引力且響應(yīng)迅速的前端網(wǎng)頁(yè)。
HTML 提供了幾個(gè)不同的元素,如 <head>、<body>、<p>、<img>、<a> 等,它們充當(dāng)網(wǎng)站的構(gòu)建塊,瀏覽器使用這些 HTML 元素來(lái)解釋和表示網(wǎng)頁(yè)上的內(nèi)容。
HTML 概述
HTML(超文本標(biāo)記語(yǔ)言)是Web瀏覽器理解并用于呈現(xiàn)網(wǎng)頁(yè)的語(yǔ)言。在不同元素的幫助下,HTML 決定了網(wǎng)頁(yè)的外觀和顯示內(nèi)容。超文本標(biāo)記語(yǔ)言 (HTML) 是一種用于創(chuàng)建獨(dú)立于平臺(tái)的超文本文檔的簡(jiǎn)單標(biāo)記語(yǔ)言。
HTML 文檔是具有通用語(yǔ)義的 SGML(標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言)文檔,可用于表示來(lái)自各種學(xué)科的數(shù)據(jù)。HTML 標(biāo)記可用于創(chuàng)建超文本郵件、文檔、新聞和超媒體;選項(xiàng)菜單;數(shù)據(jù)庫(kù)查詢結(jié)果;帶有內(nèi)嵌圖形的簡(jiǎn)單結(jié)構(gòu)化文檔;和現(xiàn)有數(shù)據(jù)集的超文本視圖。
HTML 語(yǔ)言的主要用途
輕松瀏覽互聯(lián)網(wǎng)
超文本允許你訪問(wèn) Internet 上的不同頁(yè)面,尤其是在你沒(méi)有記住所有 URL 的情況下。你只需單擊鏈接或在地址字段中輸入 URL 即可瀏覽互聯(lián)網(wǎng)。超文本對(duì)于引導(dǎo)用戶瀏覽你的網(wǎng)站并充當(dāng)網(wǎng)關(guān)至關(guān)重要,以便他們知道存在不同的頁(yè)面并可以在它們之間導(dǎo)航。如果不使用超文本,用戶很難檢測(cè)到網(wǎng)站上是否還有其他網(wǎng)頁(yè)。
尖端功能
HTML 支持 Polyfill 功能,它是一種允許你在 HTML 中本地使用不同技術(shù)的代碼。你可以使用此功能復(fù)制未來(lái)的API,同時(shí)為過(guò)時(shí)版本的瀏覽器提供回退功能;你可以自定義polyfill庫(kù)以滿足你的特定要求并執(zhí)行其他人從未做過(guò)的事情。HTML 的這些尖端特性是HTML有如此多用途的原因。
創(chuàng)建 Web 文檔
網(wǎng)頁(yè)只是一個(gè)Web文檔,你可以在其中編寫你希望用戶看到的材料,然后將其包裝在指示機(jī)器如何格式化整個(gè)內(nèi)容的代碼中。這會(huì)告訴你的瀏覽器標(biāo)題、正文和元數(shù)據(jù)中的文本,它帶有標(biāo)簽,因此計(jì)算機(jī)知道如何處理你提供的信息。
數(shù)據(jù)輸入
你擁有執(zhí)行任何數(shù)據(jù)輸入任務(wù)所需的所有 API。作為開(kāi)發(fā)人員,你只需在相關(guān)字段中添加標(biāo)簽,例如文本和數(shù)據(jù)格式,你甚至可以提供屏幕鍵盤和驗(yàn)證,確保為用戶提供流暢和愉快的體驗(yàn)。
游戲開(kāi)發(fā)
游戲開(kāi)發(fā)是 HTML 的重要用途之一。盡管不再支持Flash,但HTML仍可用于創(chuàng)建基于瀏覽器的游戲。你使用的API不必完全實(shí)現(xiàn),但可以使用最必要的組件,同時(shí)去掉了其余的功能,帶來(lái)了更輕松的體驗(yàn)。由于HTML5的進(jìn)步,HTML正迅速成為最流行的游戲編程語(yǔ)言之一。
離線存儲(chǔ)
如果你的一些用戶不在線怎么辦?在最新版本的HTML中找到的應(yīng)用程序緩存方法的幫助下,你仍然可以使你的應(yīng)用程序運(yùn)行。應(yīng)用程序緩存負(fù)責(zé)各種離線功能,包括各種組件,包括需要更新的API調(diào)用。通過(guò)清單文件,你可以控制瀏覽器對(duì)其離線使用的操作,甚至它使用的資源。
原生API使用
API代表“應(yīng)用程序編程接口”,這是兩個(gè)不同應(yīng)用程序相互通信的一種方式。通過(guò)使用API,HTML包括地理定位、事件管理、拖放和更多功能,HTML編程現(xiàn)在比以往任何時(shí)候都更強(qiáng)大。開(kāi)發(fā)人員還可以使用具有異步特性的現(xiàn)代在線應(yīng)用程序。
在客戶端存儲(chǔ)東西
IndexDB和Localstorage 使在客戶端存儲(chǔ)文件更簡(jiǎn)單、更高效,這些都有自己的一套強(qiáng)大的功能。
Localstorage支持setItem、getItem 和removeItem方法,以及基于字符串的哈希表存儲(chǔ)。IndexDB帶有更多的存儲(chǔ)空間,你可以在用戶許可的情況下增加。
方便使用的
與其他編程語(yǔ)言不同,HTML以用戶友好而聞名,即使對(duì)于初學(xué)者也是如此,所以,這也是HTML的主要用途之一。HTML中有語(yǔ)義組件來(lái)描述它們所具有的內(nèi)容類型,例如,頁(yè)眉、頁(yè)腳、主要、摘要和時(shí)間等HTML常用標(biāo)簽是自描述的。
可訪問(wèn)的富Internet應(yīng)用程序
HTML5語(yǔ)義標(biāo)簽的使用使網(wǎng)站搜索引擎和屏幕閱讀器友好,如果正確使用語(yǔ)義標(biāo)簽,視障人士可以使用屏幕閱讀器從網(wǎng)頁(yè)中獲取信息。
結(jié)論
在這篇博客中,我們講述了HTML的所有重要用途,它通常是Web開(kāi)發(fā)人員學(xué)習(xí)的第一語(yǔ)言,所以,如果你想學(xué)習(xí)Web編程并且害怕學(xué)習(xí)HTML的難度,你不必?fù)?dān)心,HTML非常容易學(xué)習(xí)。
*請(qǐng)認(rèn)真填寫需求信息,我們會(huì)在24小時(shí)內(nèi)與您取得聯(lián)系。