首頁  >  文章  >  web前端  >  瀏覽器如何處理 CSS 屬性中缺少的單位?

瀏覽器如何處理 CSS 屬性中缺少的單位?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-24 14:00:02340瀏覽

How Do Browsers Handle Missing Units in CSS Attributes?

沒有單位的CSS 屬性的後備

在CSS 中,當缺少單位(例如px、em、pt、%)時屬性,瀏覽器處理情況的方式有所不同。

怪異模式行為

在怪異模式下,某些瀏覽器可能會回退到首選單位,通常是 px。此行為基於遺留的無單位 HTML 屬性(如寬度和高度)。

標準模式行為

在標準模式下,根據 CSS2.1 規範,所有非-零長度值需要單位。 UA 應該忽略沒有單位的長度值。

瀏覽器不一致

儘管標準模式下有標準化行為,但瀏覽器在怪異模式下表現出不一致:

  • Internet探險家:忽略IE7 及更高版本中的無單位規則
  • Firefox:寬度回退到px,但忽略邊框寬度
  • Chrome、Opera、Safari:兩個寬度回退到px和border-width

W3C 要求

W3C 不規定怪異模式下無單位CSS 屬性的行為。規範僅要求 UA 在標準模式下忽略無單位長度值。

具體問題:

  1. 為什麼 px 在怪異模式下回退?
    這是基於舊版 HTML 屬性的古怪行為。
  2. 強制回退到首選單位?
    不,在怪癖模式下不是強制的。
  3. 給定範例的正確怪癖模式行為:
    沒有定義的正確行為,因為它取決於瀏覽器怪癖。 Chrome、Opera 和 Safari 的行為與在標準模式下忽略無單位規則更加一致。

以上是瀏覽器如何處理 CSS 屬性中缺少的單位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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