Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在CSS文件中使用@import会减少HTTP请求吗?_Css - Fatal编程技术网

在CSS文件中使用@import会减少HTTP请求吗?

在CSS文件中使用@import会减少HTTP请求吗?,css,Css,如果我有一个CSS文件包含在页面中,比如 <link rel="stylesheet" type="text/css" href="all.css"> 这是执行1个HTTP请求还是执行3个HTTP请求 导入多个文件与链接到主文件中的所有文件相比是否有好处 (我知道理想的解决方案是将all和minify结合起来)我建议不要使用@import。这会阻止浏览器并行下载文件,因为它必须解析第一个css文件。然后检索导入css文件并导入它们 正如你提到的,组合和缩小css是最好的选择。使用

如果我有一个CSS文件包含在页面中,比如

<link rel="stylesheet" type="text/css" href="all.css">
这是执行1个HTTP请求还是执行3个HTTP请求

导入多个文件与链接到主文件中的所有文件相比是否有好处


(我知道理想的解决方案是将all和minify结合起来)

我建议不要使用@import。这会阻止浏览器并行下载文件,因为它必须解析第一个css文件。然后检索导入css文件并导入它们


正如你提到的,组合和缩小css是最好的选择。使用像这样的工具可以使样式表保持独立和干净,但可以将它们合并并缩小。

这仍然意味着需要三个HTTP请求,并且很可能会使加载过程更加缓慢,正如JRO所提到的

相反,我建议您将所有CSS缩小到一个文件中,以尽可能少地发出HTTP请求,并减少需要传输的数据量


如果你不想在服务器端使用CSS缩小工具,这里是一个可以使用的CSS缩小工具的示例。

我认为,考虑到问题的上下文,有一些误导性的建议。当然,“香草”CSS
@import
将发出HTTP请求。但OP似乎使用了前置处理器

预处理器,例如;SASS或更少,通过编译代码来工作,通常编译成一个单一的
css
文件。这意味着已经为您处理并包含了一个
@import
。您只需引用端点样式表


所以不用了。当你使用前置处理器的时候,把自己弄晕。这是一种组织代码的好方法。

这意味着它可以处理3个HTTP请求。这正是我想要听到的,我总是远离它们,因为我认为这不好,但我没有任何真正的理由。我注意到很多wordpress主题都在导入。我在构建脚本中缩小并合并
@import "shCore.scss";
@import "shThemeDjango.scss";