网上关于link和@import区别的疑问

在网上很多抄来抄去的内容都这么说:

1:link是XHTML标签,除加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴只能加载CSS
2:link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。
3:link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。
4:link支持使用Javascript控制DOM去改变样式;而@import不支持。

对其中的第2点有些疑问,“@import需要页面网页完全载入后加载“ 是什么意思,DCL事件之后再加载?通过验证后发现并非如此。

对其中的第4点表示看不太懂,什么叫“link支持使用Javascript控制DOM去改变样式”?

望大神能指点一下。

阅读 1.9k
1 个回答

2、查到多大多数资料都是说,浏览器在遇到 @improt 时,会阻塞后面的加载,并且多个 @import 时,加载是串行的,即一个加载完成后,才会加载下一个;而 link 标签是并行加载的。

不过,在现代浏览器上没有复现这个问题,或许是因为有过改动,因为查到的资料里面没有看到有定义这个加载的,更多取决于浏览器的实现了。

4、link 标签,是一个 DOM 标签,你可以使用 JS 去创建或者修改他的 href 来实现改变样式。

而如果 @import 是在一个 style 单独的标签里面的话,你到也是可以去创建一个 style 标签里面添加 @import 从而实现类似的效果,但是如果这个 @import 标签是在一个 CSS 文件里面,你就没有办法了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题