詳解HTML編程的標(biāo)記與文檔結(jié)構(gòu)

用HTML標(biāo)記內(nèi)容的目的是為了賦予網(wǎng)頁(yè)語(yǔ)義(semantic)。換句話說(shuō),就是要給你的網(wǎng)頁(yè)內(nèi)容賦予某些用戶代理(user agent)能夠理解的含義。
HTML 規(guī)定了一組標(biāo)簽,用來(lái)給內(nèi)容打上不同的標(biāo)記。每個(gè)標(biāo)簽都是對(duì)它所包含內(nèi)容的一種描述。最常用的HTML描述的是標(biāo)題、段落、鏈接和圖片。目前,HTML一共有114個(gè)標(biāo)簽,但按照 80/20 原則,使用其中25個(gè)左右的標(biāo)簽就可以滿足80%的標(biāo)記需要。
HTML 最新的版本 HTML5,又新規(guī)定了一批結(jié)構(gòu)化標(biāo)簽,用于對(duì)相關(guān)內(nèi)容的標(biāo)簽進(jìn)行分組,從而更好地規(guī)范網(wǎng)頁(yè)的整體結(jié)構(gòu)。這些新標(biāo)簽包括<header>、<nav>(即 navigation,導(dǎo)航)、<article>、<section>、<aside>和<footer>。
1.標(biāo)簽的閉合
對(duì)于每個(gè)包含內(nèi)容的元素(比如標(biāo)題、段落和圖片),根據(jù)它所包含的內(nèi)容是不是文本,有兩種不同的方式給它們加標(biāo)簽,一種是使用閉合標(biāo)簽,另一種是使用非閉合標(biāo)簽。
1.1 文本用閉合標(biāo)簽
示例:<h1>Hello, CSS!</h1>
1.2 引用內(nèi)容用自閉合標(biāo)簽
示例:<img src="images/dog.jpg" alt="This is my dog." >
提示:
對(duì)于自閉合標(biāo)簽,XHTML 要求必須這樣寫:
- <img src="images/dog.jpg" alt="This is my dog." />
而在 HTML5 中,可以省略最后那個(gè)表示關(guān)閉的斜杠,寫成:
- <img src="images/dog.jpg" alt="This is my dog." >
2.屬性
提示:視障用戶使用的屏幕閱讀器會(huì)大聲讀出 alt 屬性的內(nèi)容,因此一定要給標(biāo)簽的
這個(gè) alt 屬性添加讓人一聽(或一看)就能明白的內(nèi)容。
3.標(biāo)題與段落
4.復(fù)合元素
HTML 不僅規(guī)定了標(biāo)題、圖片和段落等基本的內(nèi)容標(biāo)記,還規(guī)定了用于創(chuàng)建列表、
表格和表單等復(fù)雜用戶界面組件的標(biāo)記,這些就是所謂的復(fù)合元素,即它們是由多
個(gè)標(biāo)簽共同構(gòu)成的。
5.嵌套標(biāo)簽
簡(jiǎn)單地說(shuō),就是把一個(gè)標(biāo)簽嵌套在另一個(gè)標(biāo)簽里面。
6.HTML5 模板
- <!DOCTYPE html>
- <html>
- <head>
- <meta charset="utf-8" />
- <title>An HTML Template</title>
- </head>
- <body>
- <!-- 這里是網(wǎng)頁(yè)內(nèi)容 -->
- </body>
- </html>
7.塊級(jí)元素和行內(nèi)元素
文檔流效果:HTML 元素會(huì)按照它們各自在標(biāo)記中出現(xiàn)的先后順序,依次從頁(yè)面上方流向下方。
幾乎所有HTML 元素的 display 屬性要么為 block,要么為 inline。最明顯的一個(gè)例外是 table 元素,它有自己特俗的 display 值。
塊級(jí)元素(比如標(biāo)題和段落)會(huì)相互堆疊在一起沿頁(yè)面向下排列,每個(gè)元素分別占一行。而行內(nèi)元素(比如鏈接和圖片)則會(huì)相互并列,只有在空間不足以并列的情況下才會(huì)折到下一行顯示。
無(wú)論你想了解哪個(gè) HTML 元素,第一個(gè)要問(wèn)的問(wèn)題都應(yīng)該是:它是塊級(jí)元素,還是行內(nèi)元素?知道了這一點(diǎn)之后,就可以在編寫標(biāo)記的時(shí)候,預(yù)想到某個(gè)元素在初始狀態(tài)下是如何定位的,這樣才能進(jìn)一步想好將來(lái)怎么用 CSS 重新定位它。
有兩點(diǎn)要知道的:
塊級(jí)元素盒子會(huì)擴(kuò)展到與父元素同寬。
行內(nèi)元素盒子會(huì) 收縮包裹 其內(nèi)容,并且會(huì)盡可能包緊。
7.嵌套的元素
在標(biāo)記中嵌套的是HTML標(biāo)簽,而在屏幕上嵌套的則是一個(gè)個(gè)的盒子。
8.文檔對(duì)象模型
文檔對(duì)象模型(簡(jiǎn)稱 DOM)是從瀏覽器的視角來(lái)觀察頁(yè)面中的元素以及每個(gè)元素的屬性,由此得出這些元素的一個(gè)家族樹。通過(guò)DOM,可以確定元素之間的相互關(guān)系。在 CSS 中引用 DOM
中特定的位置,就可以選中相應(yīng)的 HTML 元素,并修改其樣式屬性。
CSS 操作 DOM 的過(guò)程是先選擇一個(gè)或一組元素,然后再修改這些元素的屬性。通過(guò) CSS 修改了元素后,比如修改了寬度或者在標(biāo)記里插入了一個(gè)偽元素,這些變化會(huì)立即在 DOM 中發(fā)生,并體現(xiàn)在頁(yè)面上。
簡(jiǎn)而言之,就是通過(guò) HTML 標(biāo)記來(lái)構(gòu)建 DOM,然后在頁(yè)面初次加載和用戶與頁(yè)面交互時(shí),使用 CSS 來(lái)修改 DOM。
相關(guān)文章
HTML5的文檔結(jié)構(gòu)和新增標(biāo)簽完全解析
這篇文章主要介紹了HTML5的文檔結(jié)構(gòu)和新增標(biāo)簽完全解析,需要的朋友可以參考下2017-04-21- 這篇文章給大家介紹了html5文檔結(jié)構(gòu)標(biāo)簽的相關(guān)知識(shí),非常不錯(cuò),具有參考借鑒價(jià)值,需要的的朋友參考下吧2017-04-21
如何在Dreamweaver cs6 中設(shè)置默認(rèn)文檔格式為html5
怎么設(shè)置Dreamweaver cs6 中默認(rèn)文檔格式為html5,很簡(jiǎn)單,在編輯->首選參數(shù)中便可設(shè)置,如截圖,有需求的朋友可以參考下,希望對(duì)大家有所幫助2013-07-28- 想實(shí)現(xiàn)跨文檔消息傳輸首先要對(duì)窗口對(duì)象的message事件進(jìn)行監(jiān)聽,然后使用window對(duì)象的postMessage()方法向其他窗口發(fā)送消息,接下來(lái)為大家詳細(xì)介紹下,感興趣的朋友可以參考2013-04-01
HTML5之SVG 2D入門8—文檔結(jié)構(gòu)及相關(guān)元素總結(jié)
前面介紹了很多的基本元素,包括結(jié)構(gòu)相關(guān)的組合和重用元素,這里主要是對(duì)SVG的文檔結(jié)構(gòu)中剩下的相關(guān)元素簡(jiǎn)單總結(jié)一下,感興趣的朋友可不要錯(cuò)過(guò)哦,然后繼續(xù)向前領(lǐng)略SVG的其2013-01-30- 多數(shù)人使用 HTML 4 和 XHTML 1 編寫網(wǎng)頁(yè)。相對(duì)較少的 HTML 狂熱者了解語(yǔ)義 HTML 的概念、驗(yàn)證 HTML 結(jié)構(gòu)和改進(jìn)文檔的可訪問(wèn)性。高質(zhì)量的 HTML 文檔是反復(fù)權(quán)衡、設(shè)計(jì)優(yōu)選和2008-10-17
- 在HTML中定義CSS的方式有:Embedding(嵌入式)、Linking(引用式)、Inline(內(nèi)聯(lián)式),下面通過(guò)實(shí)例為大家詳細(xì)介紹下它們的特點(diǎn)2014-06-04
html文檔中的 ol 元素的序號(hào)數(shù)字極限探討
能在html文檔中遇到極大的ol列表可能性不大,本文只是純粹技術(shù)探討,感興趣的朋友可以了解下2013-10-14- 昨天給添加了在線測(cè)試效果!打開后發(fā)現(xiàn)JS彈出框位置和效果不對(duì)!但是我在我本地測(cè)試是沒(méi)問(wèn)題的!仔細(xì)檢查后發(fā)現(xiàn)原來(lái)是由于博客園的HTML文檔類型和我的不一樣。2010-10-29
- 網(wǎng)頁(yè)制作Webjx文章簡(jiǎn)介:CSS通過(guò)與(X)HTML的文檔結(jié)構(gòu)相對(duì)應(yīng)的選擇器(selector)來(lái)達(dá)到控制頁(yè)面表現(xiàn)的目的,而文檔結(jié)構(gòu)不僅僅在CSS的應(yīng)用上非常重要,對(duì)于行為層(例如使用2009-04-02