2015-11-12 21 views
0

下面meta標籤語法是由瀏覽器所接受,爲什麼瀏覽器接受丟失html語法?

<meta http-equiv="refresh" content="3; redirect.html"/> 

但是,https://validator.w3.org可以接受以下語法(只),

<meta http-equiv="refresh" content="3; url=redirect.html"/> 

所以,

1)爲什麼瀏覽器接受失去html的語法?

2)對於生產代碼,什麼是驗證html語法的標準方法?

+0

對於你的觀點2:如果驗證對W3應該在所有的瀏覽器(幾乎)相同的顯示。如果沒有,它仍然可以在一些甚至很多瀏覽器中工作,但是你不能保證。 – Adwaenyth

+0

HTML並沒有跳入「充滿成長和武裝,充滿吶喊」的世界。它多年來一直在發展;可選的東西變成強制性的,反之亦然。 'meta'是一個多年來發展很快的標籤的例子。如果「標準」發生變化,瀏覽器突然拒絕已存在的頁面將會非常殘酷。 – usr2564301

回答

3
  1. 瀏覽器中存在錯誤(或者簡單地說是鬆散的解析器)。
  2. 人們編寫的代碼依賴於這些錯誤。
  3. 其他瀏覽器複製這些錯誤,以便上一步中的代碼可以正常工作。
  4. 轉到1
+0

我猜測你的第1和第2點是互惠的:人們編寫的HTML相當糟糕,瀏覽器被調整爲接受它,然後/因此/此後人們寫了甚至更糟的HTML。 – usr2564301

+0

@Jongware - 那會失敗「Works in * my * browser,OK,我會發布」測試。 – Quentin

相關問題