href:标识超文本引用,用在link
和a
等元素上,href
是引用和页面相关联,是在当前元素和引用资源之间建立联系
src:表示引用资源,表示替换当前元素,用在img
,script
,iframe
上,src
是页面内容不可缺少的一部分
(是 source 的缩写,是指向外部资源的位置,指向的内部会嵌入到文档中当前标签所在的位置。在请求 src 资源时会将其指向的资源下载并应用到当前文档中,例如 js 脚本,img 图片和 iframe 等元素)
<script src="xxx.js"></script>
当浏览器解析到这一句的时候会暂停其他资源的下载和处理,直至将该资源加载,编译,执行完毕,图片和框架等元素也是如此,类似于该元素所指向的资源嵌入到当前标签内,这也是为什么把 js 放在底部而不是放在头部的原因
<link rel="stylesheet" href="common.css"/>
当浏览器解析到这一句的时候会识别文档为 css 文件,会下载并且不会停止对当前文档的处理,这也是为什么建议使用link
方式来加载 css 而不是 @import
link 和 @import 的区别:
两者都是外部引用 css 的方式,当时有一定的区别
-
link
是 XHTML 标签,处理加载 css 外,还可以定义 RSS 等其他事务;@import
属于 css 范畴,只能加载 css -
link
引用 css 时,在页面载入时同时加载;@import
需要页面完全载入以后加载 -
link
时 XHTML 标签,无兼容问题;@import
是在 css2.1 提出的,低版本的浏览器不支持 -
link
支持使用 Javascript 控制 DOM 去改变样式;而@import
不支持