页面导入样式时,使用link和@import有什么区别

link@import都是用来引入外部样式表的方式,主要区别如下:

一. link

  • 所属层面: HTML标签,在HTML的<head>中引入外部样式表,如:
  <link rel="stylrsheet" href="style.css" media="screen">
  • 加载时机:浏览器会并行加载link引入的样式表,不会阻塞页面的渲染。 在页面解析阶段就会被处理,优先于@import
  • 兼容性:没有兼容性问题
  • 动态操作:可以在JavaScript中动态创建link标签(如document.creatElement('link')),实时改变样式

二、@import

  • 所属层面:CSS语法,在css样式表或<style>标签中引入外部样式表,如:
  @import url("print.css");
  • 加载时机串行加载,需要等当前的css样式加载完成之后,再加载@import的样式表。可能延迟页面渲染,影响性能
  • 兼容性:IE5+支持,但老版本IE中可能存在加载顺序问题
  • 动态操作:无法通过JavaScript直接操作@import,需要通过修改CSSOM间接处理,灵活性低

三、总结

所属层面加载时机兼容性动态操作
linkHTML标签并行加载,不会阻塞页面渲染无兼容性问题支持动态操作
@importCSS语法串行加载,会影响页面渲染、影响性能IE5以下可能会有兼容性问题不支持动态操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值