為什麼載入 JavaScript 使用 “src”,CSS 使用 “href”?

來源:互聯網
上載者:User

轉自知乎上hax的解答。

理論上說,src表達的是該元素的內容將被整體替換。比如img元素、script元素、iframe元素都是如此。

胎死腹中的XHTML2中就將src屬性推廣到了所有元素。比如可以:

 <style src="common.css">  /*這裡的內容被忽略*/   </style>  

而href表達的是超連結。比如a元素、link元素。

胎死腹中的XHTML2也將href屬性推廣到了所有元素。比如可以:

 <ol>    <li href="/">首頁</li>  </ol>  

當然,XHTML2死翹翹了,所以src和href屬性並沒有通用化。不過HTML5或者將來的HTML還是會遵循這種設計的,比如video/audio元素中的src屬性。

至於說為什麼當初就決定外部樣式表用link href來連結,而不是用style src來載入,可能是因為先賢們認為樣式表更符合外部連結資源的特徵,它更接近附屬的資源,而不是內嵌的內容。比如考慮alternate stylesheets,在同一時間只需要連結一組樣式表,而不是載入所有。當然你可以簡單的歸結為曆史遺留(也就是當初某個瀏覽器開發人員的一個偶然決定導致)。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.