我想生成各种css文件,例如:
等 我有这样的HTML代码:
<link rel="stylesheet" media="all and (max-width: 450px)" href="assets/css/mobile.css">
<link rel="stylesheet" media="all and (min-width: 450px) and (max-width: 1024px)" href="assets/css/tablet.css">
<link rel="stylesheet" media="all and (min-width: 1024px) and (max-width: 1264px)" href="assets/css/desktop.css">
<link rel="stylesheet" media="all and (min-width: 1264px)" href="assets/css/widescreen.css">
所以我用这样的内容创建了每个* .scss:
在desktop.scss中
$mode: "desktop";
@import "main";
在_main.scss中我创建了这样的变量:
$desktop: false;
@if $mode == 'desktop' {
$desktop: true;
}
所以问题就是这样。我想使用_normilize.scss
@if $global {
@import "parts/normalize";
}
但我在这里有错误:
Syntax error: Import directives may not be used within control directives or mixins.
on line 3 of /opt/code/host/resulinkpro/design/assets/sass/_main.scss
使用指南针观察
进行编译我的问题是:
我的主要想法是避免不需要的媒体查询,这使得.css更小,然后使用javascript替换模式(目前在标签中使用媒体属性)。也只在浏览器中使用必要的样式。