HTML 關於塊級元素所遇到的問題

2021-08-06 07:11:13 字數 1568 閱讀 1653

今天子查詢jquery find和children的區別時,看到乙個例子

$(document).ready(function

());

script>

id="abc">

hellospan>

class="selected">hello againp>

class="selected">and againdiv>

class="selected">aaand againspan>

div>

and one last timep>

div>

這例子的結果為:

hello

hello again

and again

aaand again

and one last time

而將其中的div改為』p』時:

$(document).ready(function

());

script>

id="abc">

hellospan>

class="selected">hello againp>

<--原先為div>

class="selected">and againdiv>

class="selected">aaand againspan>

p>

<--原先為/div>

and one last timep>

div>

這時的結果為:

hello

hello again

and again

aaand again

and one last time

先來理解jquery find和children的意思:

w3school上對find和children的描述分別為

函式描述

.children()

獲得匹配元素集合中每個元素的所有子元素。

.find()

獲得當前匹配元素集合中每個元素的後代,由選擇器進行篩選。

我對它們的理解是:

函式個人理解

.children()

只獲取所有的子元素,子元素下的子子元素不獲取

.find()

只要在該父元素下的所有元素,都能湖區到,包括子元素下的子子元素…

前者的.selected作為div下的子標籤 從這個理論上來說 是正確的;但是後者的p標籤下的.selected同樣作為子元素,理論上結果和前者無差別才是.

經過查閱資料 ,找到了乙個合理的解釋

有些塊元素不可以包含另一些塊元素 ,dtd中規定了塊級元素是不能放在p裡;//後半句不理解

p標籤內包含塊元素時,它會先結束自己,

比如:測試p包含divdiv>

p>

那麼瀏覽器會解釋成:

p>

測試p包含divdiv>

p>

會多解發布乙個p

這樣 就能合理解釋 後者子標籤失效的原因了.

HTML塊級元素

在html5出現之前,人們一般把元素分為塊級 內聯和內聯塊元素。本文將詳細介紹html塊級元素 標題 heading 元素有六個不同的級別,是最高端的,而則是最低的。乙個標題元素能簡要描述該節的主題 從到,重要性逐漸減小,字型大小也逐漸減小。在使用標題元素時,要注意以下幾點 1 不要為了減小標題的字...

HTML 塊級元素 行級元素

塊狀元素排斥其他元素與其位於同一行,可以設定元素的寬 width 和高 height 塊級元素一般是其他元素的容器,可容納塊級元素和行內元素。常見的塊級元素有div,p h1 h6等。行內元素不可以設定寬 width 和高 height 但可以與其他行內元素位於同一行,行內元素內一般不可以包含塊級元...

HTML行內元素 塊級元素 行內塊級

html標籤按照元素種類可以分為行內元素 display inline 塊級元素 display block 和行內塊級元素 display inline block 三種。了解元素種類有利於,我們進行css布局及屬性的使用。也叫內聯元素或內嵌元素,只能容納文字或其他內聯元素。預設特點 示例 關關雎...