首頁 >web前端 >css教學 >為什麼 HTML 中的重複 ID 有時會起作用,最佳實踐是什麼?

為什麼 HTML 中的重複 ID 有時會起作用,最佳實踐是什麼?

Barbara Streisand
Barbara Streisand原創
2024-12-21 20:50:28670瀏覽
<p>Why Do Duplicate IDs in HTML Sometimes Work, and What's the Best Practice?

<p>具有相同ID 的多個元素回應CSS 選擇器

<p>在單一網頁中為多個元素分配相同ID 通常被認為是不好的做法。根據 W3C 文檔,ID 屬性必須具有唯一值來唯一標識其各自的元素。

<p>但是,某些情況(例如使用 jQuery 外掛)可能會無意中導致重複的 ID。令人驚訝的是,瀏覽器傾向於透過「靜默失敗」來處理這種情況。他們嘗試解釋無效 HTML 背後的意圖並相應地調整其行為。

<p>例如,考慮以下程式碼:

#red {
  color: red;
}
<p>
<p>儘管 ID 重複,但兩個段落都會在所有主要瀏覽器中顯示為紅色。但是,這種行為並不能保證,並且可能會導致意外的副作用。

<p>例如,使用 document.getElementById('red') 透過元素的 ID 存取元素將只傳回第一個元素。要選擇這兩個元素,您需要使用屬性選擇器,例如 document.querySelectorAll('p[id="red"]')。但是,IE7 及以下版本不支援此方法。

<p>為避免潛在問題,強烈建議使用類別名稱而不是 ID 來使用 CSS 定位多個元素。類別名稱是專門為此目的而設計的,並確保所有瀏覽器之間的一致性。

以上是為什麼 HTML 中的重複 ID 有時會起作用,最佳實踐是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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