首頁  >  文章  >  web前端  >  HTML標籤嵌套的詳細規則

HTML標籤嵌套的詳細規則

php中世界最好的语言
php中世界最好的语言原創
2018-01-26 10:51:063146瀏覽

這次帶給大家HTML標籤巢狀的詳細規則,HTML標籤巢狀的注意事項有哪些,以下是實戰案例,一起來看一下。

最近在重新學習HTML的知識,算是對HTML的一個重新認識吧!別小看了這東西,一切的網頁可都是以它為基礎的!下面就詳細歸納一下HTML標籤的巢狀規則吧,希望對大家有幫助。

XHTML的標籤有許多:div、ul、li、dl、dt、dd、h1~h6、p、a、addressa、span、 strong……我們在運用這些標籤來建構頁面結構的時候,是可以將它們無限嵌套的,但是,嵌套也需要有一定規則,不能任由自己的個人習慣胡亂嵌套—— XHTML 必竟不是XML。

在 XHTML 的語言裡,我們都知道:ul 標籤包含 li、dl 標籤包含 dt 和 dd——這些固定標籤的巢狀規則十分明確。但是,還有許多標籤是獨立的,它們沒有被綁在一起,例如 h1、div、p……那麼這些標籤的巢狀規則到底是怎麼樣的?今天就來談談這個話題。

提到XHTML 標籤的巢狀規則,我們先得知道有這麼二類XHTML 標籤:
一類叫做區塊級元素(block)
一類叫做內嵌元素(inline,也有許多人叫它:內聯、行內、線級等)

區塊級元素和內嵌元素的分割標準很簡單,請把下面二行程式碼放進body 標籤裡: 

#程式碼如下:

<div style=”border: 1px solid red;”>div1</div> 
<div style=”border: 1px solid red;”>div2</div>

瀏覽器的呈現效果:
div1
div2
頁面呈現的這二個div 佔據了二行空間,除非讓它們浮動(float)或是進行其他設置,否則誰都不挨著誰,它們都很霸道的佔領屬於自己的那一行空間——但凡看到某個標籤有此現象,你就可以叫它:塊等級元素(block);
再把下面二行程式碼也放進body 標籤裡: 

#程式碼如下:

<span style=”border: 1px solid red;”>span1</span> 
<span style=”border: 1px solid red;”>span2</span>

瀏覽器的呈現效果:
span1 span2
這次,兩個span 並列在一行,它們之間睦鄰友好、親切和諧……像這樣的標籤行為,我們可以稱它們為:內嵌元素(inline);
區塊級元素和內嵌元素的區別:
·區塊級元素一般用來建立網站架構、佈局、承載內容…像這些大體力活都屬於區塊級元素的,它包括以下這些標籤:

address、blockquote、center、dir、div、dl、dt、dd、fieldset、form、h1~h6、hr、isindex、menu、noframes、noscript、ol、p、pre、table、ul

· 內嵌元素一般用在網站內容之中的某些細節或部位,用以「強調、區分樣式、上標、下標、錨點」等等,以下這些標籤都屬於內嵌元素:

a、abbr、acronym、b、bdo、big、br、cite、code、dfn、em、font、i、img、input、kbd、label、q、s、samp、select、small、span、strike、strong、sub、sup、textarea、tt、u、var

· 區塊元素和內嵌元素是可以互相轉換的,轉換的程式碼如下:

display: block; /* 转成块元素 */ 
display: inline; /* 转成内嵌元素 */

· 區塊元素和內嵌元素對於CSS 的呼叫規則是不一樣的(這篇文章討論的是標籤嵌套,所以對這個知識點不展開說明)。
簡單認識了區塊元素和內嵌元素以後,下面就可以羅列XHTML 標籤的巢狀規則了:
1. 區塊元素可以包含內嵌元素或某些區塊元素,但內嵌元素卻不能包含區塊元素,它只能包含其它的內聯元素:

<div><h1></h1><p></p></div> —— 对 
<a href=”#”><span></span></a> —— 对 
<span><div></div></span> —— 错

2. 區塊級元素不能放在e388a4556c0f65e1904146cc1a846bee裡面:

<p><ol><li></li></ol></p> —— 错 
<p><div></div></p> —— 错

3. 有幾個特殊的區塊級元素只能包含內嵌元素,不能再包含區塊級元素,這幾個特殊的標籤是:

h1、h2、h3、h4、h5、h6、p、dt

4. li 內可以包含div 標籤—— 這一條其實不必單獨列出來的,但是網上許多人對此有些疑惑,就在這裡略加說明:
li 和div 標籤都是裝載內容的容器,地位平等,沒有級別之分(例如:h1、h2 這樣森嚴的等級制度^_^),要知道,li 標籤連它的父級ul 或是ol 都可以容納的,為什麼有人會覺得li 偏偏容納不下一個div 呢?別把li 看得那麼小氣嘛,別看li 長得挺瘦小,其實li 的胸襟很大滴…
5. 塊級元素與塊級元素並列、內嵌元素與內嵌元素並列:

<div><h2></h2><p></p></div> —— 对 
<div><a href=”#”></a><span></span></div> —— 对 
<div><h2></h2><span></span></div> —— 错

相信看了這些案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

相關閱讀:

HTML中head頭結構應該如何使用

##type="file"的input框樣式應該如何操作

在HTML的列表中,dl(dt,dd)、ul(li)、ol(li) 有什麼不同

以上是HTML標籤嵌套的詳細規則的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn