css - SASS @import 根据屏幕尺寸导入多个文件

标签 css import sass media-queries

我的元素中有超过 20 个 .scss 表。

我想将它们放入“导入”工作表中,其中某些工作表仅根据屏幕宽度进行读取。

我在一个非 SASS 元素中使用了 import.css,使用以下命令:

@import url('sheet-1.css');

@import url('sheet-2.css') screen and (min-width: 300px) and (max-width: 730px);

我已经在imports.scss文件中尝试过这个 - 但编译后的imports.css有错误:

Syntax error: Invalid CSS after \"sheet-2.css') \": expected selector or at-rule, was \"screen and (min...\"\A

这是错误的做法吗? ..或者有解决办法吗?

最佳答案

当您使用 url() 时,这显然是 Sass 解析器中的一个错误。您需要这样写:

@import 'sheet-1.css';
@import 'sheet-2.css' screen and (min-width: 300px) and (max-width: 730px);

这应该编译为(CSS 验证器说这是有效的):

@import url(sheet-1.css);
@import 'sheet-2.css' screen and (min-width: 300px) and (max-width: 730px);

我已代表您提交了错误报告,您可以在此处跟踪:https://github.com/nex3/sass/issues/1042

但是,我确实建议您将这些文件转换为 Sass,以便将它们编译为单个 CSS 文件。所有浏览器都会下载所有链接的样式表,即使它们当前不满足媒体查询限制:

@import 'sheet-1'; // filename = _sheet-1.scss
@media screen and (min-width: 300px) and (max-width: 730px) {
    @import 'sheet-2'; // filename = _sheet-2.scss
}

关于css - SASS @import 根据屏幕尺寸导入多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20549522/

相关文章:

html - 为什么我的 <br> 标签会被 CSS 计数器忽略?

css - 在 Sass 中重复单个声明的最佳方法是什么?

当我使用 --watch 参数时出现 Sass 问题

html - 使用 SASS 变量生成内联 CSS

jquery - ScrollToFixed 滚动问题

css - Bootstrap Modal 打开模态的不同部分

css - JsViews css-tag 中的逻辑

在R中读取arff文件

sql - 使用 OPENXML 从 XML 文件读取时获取 NULL 值

Dart:当你导入一个文件时,你会导入该文件导入的所有内容吗?