src 和 href 的区别

src 用于引用资源,替换当前元素;href 用于在当前文档和引用资源之间确立联系。

解析:

href 标识超文本引用,用在 link 和 a 等元素上,href 是引用和页面关联,是在当前元素和引用资源之间建立联系。

若在文档中添加 href,浏览器会识别该文档为 CSS 文件,就会并行下载资源并且不会停止对当前文档的处理。这也是为什么建议使用 link 方式加载 CSS,而不是使用 @import 方式。

src 表示引用资源,替换当前元素,用在 img,script,iframe 上,src 是页面内容不可缺少的一部分。

当浏览器解析到 src,会暂停其他资源的下载和处理(图片不会暂停其他资源下载和处理),直到将该资源加载、编译、执行完毕,图片和框架等也如此,类似于将所指向资源应用到当前内容。这也是为什么建议把 js 脚本放在底部而不是头部的原因。

补充

补充:从结果看,href 是"建立关系",src 是"嵌入内容",浏览器对它们的加载策略也因此不同。

加载行为对比

维度hrefsrc
含义Hypertext Reference,建立引用关系Source,把资源嵌入当前元素
阻塞渲染一般不阻塞当前文档解析多数情况下会阻塞(脚本、图片、iframe)
典型元素<link>、a<img>、<script>、<iframe>
浏览器行为并行下载资源暂停当前处理,先加载、解析、执行

一句话总结

  • href:建立关系,可并行下载
  • src:嵌入自身,会替换当前元素

来源整理自:我的有道云笔记