@import和link引入样式的区别
🗒️@import和link引入样式的区别
2021-7-2|最后更新: 2023-10-7
type
status
date
slug
summary
tags
category
icon
password
Blocking
Blocked by
top
URL
Sub-item
Parent item
<link>@import 都可以用于加载外部样式表(CSS),但它们之间有一些区别:
  1. 加载顺序和并行加载
      • <link><link> 元素可以在 HTML 页面的 <head> 部分或文档的任何位置使用,并且会在页面加载时同时加载和解析。它支持并行加载多个样式表,并且不会阻塞页面的渲染过程。
      • @import@import 是 CSS 提供的一种方式,用于在样式表中导入其他样式表。@import 语句必须出现在样式表的顶部,而且每个 @import 语句只能加载一个样式表。它会按照在样式表中的顺序依次加载,并且在加载和解析过程中会阻塞页面的渲染。
  1. 浏览器兼容性
      • <link><link> 元素是 HTML 的一部分,被所有现代浏览器支持,并且具有更广泛的兼容性。它可以加载任何外部资源,不仅限于样式表。
      • @import@import 是 CSS2 引入的语法,虽然被大多数现代浏览器支持,但在某些旧版本的浏览器中可能不被完全支持,或存在一些性能问题。
  1. 优先级
      • <link><link> 元素在 CSS 层叠中具有较高的优先级,可以覆盖之前加载的样式表中的规则。
      • @import@import 语句的优先级较低,它在样式表中的位置决定了它的优先级。如果多个 @import 语句引入的样式表存在冲突,后面的规则可能会覆盖前面的规则。
总的来说,<link> 元素更灵活、更强大,并且具有更好的浏览器兼容性。在大多数情况下,推荐使用 <link> 元素来加载外部样式表。@import 语句在特定的情况下(如需要动态加载样式表)可能会有一些用途,但在一般情况下较少使用。
移动布局单位利用webpack的require.context()实现动态导入
Loading...