談?wù)剆rc和href的區(qū)別

src和href都是用于外部資源的引入,像圖片、CSS文件、HTML文件、js文件或其他web頁面等。
那么在SRC和HREF之間是否有一個明確的區(qū)別呢?在哪些地方或者什么時候應(yīng)該用SRC還是HREF?我想它們的使用并不是可以隨意替換的。
我先給出幾個這兩個屬性的使用例子:

  • 引用css文件時:href="cssfile.css"
  • 引用js文件時:src="myscript.js"
  • 引用圖片:src="mypic.jpg"
  • 網(wǎng)站鏈接:

它們之間的主要區(qū)別可以用這樣一句話來概括:src用于替代這個元素,而href用于建立這個標簽與外部資源之間的關(guān)系。
例如:
<a href="www.xxx.com">\<\img src="1.jpg">\</a>
a標簽里面的內(nèi)容是一張圖片,a標簽加上href屬性將圖片鏈接到了www.xxx.com這個網(wǎng)站,但并未替換a標簽里面的內(nèi)容,而img標簽的src屬性則是將這個標簽完全替換成了src里面的資源。

href (Hypertext Reference) 超文本引用href這個屬性指定web資源的位置,從而定義當前元素(如錨點a)或當前文檔(如鏈接)與目標錨點或目標資源之間的聯(lián)系。
例如當我們寫:
<link href="style.css" rel="stylesheet" />
瀏覽器知道這是個樣式表文件,html的解析和渲染不會暫停,css文件的加載是同時進行的,這不同于在style標簽里面的內(nèi)置樣式,用@import添加的樣式是在頁面載入之后再加載,這可能會導(dǎo)致頁面因重新渲染而閃爍。所以我們建議使用link而不是@import。

src (Source)源這個屬性是將資源嵌入到當前文檔中元素所在的位置。例如當我們寫:
<script src="script.js"></script>
當瀏覽器解析到這句代碼時,頁面的加載和解析都會暫停直到瀏覽器拿到并執(zhí)行完這個js文件。這就像是把js文件里的內(nèi)容全部注入到這個script標簽中,類似于img,img標簽是一個空標簽,它的內(nèi)容就是由src這個屬性定義,瀏覽器會暫停加載直到這個圖片加載完成。這也是為什么要將js文件的加載放在body最后的原因(在</body>前面)。

參考:Difference between SRC and HREF

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽?zāi)J的外補...
    _Yfling閱讀 13,814評論 1 92
  • ?前端面試題匯總 一、HTML和CSS 21 你做的頁面在哪些流覽器測試過?這些瀏覽器的內(nèi)核分別是什么? ...
    Simon_s閱讀 2,228評論 0 8
  • HTML5面試題總結(jié)1.基礎(chǔ)問題 = 和 == 和 === 的區(qū)別?= : 用于賦值 == : 用于判斷 === ...
    LorenaLu閱讀 1,210評論 0 4
  • 轉(zhuǎn)載請聲明 原文鏈接地址 關(guān)注公眾號獲取更多資訊 第一部分 HTML 第一章 職業(yè)規(guī)劃和前景 職業(yè)方向規(guī)劃定位...
    前端進階之旅閱讀 16,627評論 32 459
  • 瘋狂購物了一次 買了好多新衣服 以前的衣服真是看煩了 扔
    有兒萬事足閱讀 204評論 0 0