我在SASS中搜索执行此操作的正确方法,我不知道是否可能。
以我为例,我在laravel中有一个拥有3个子域的网站。这3个子域将具有相同的站点结构,但是数据和样式将有所不同。
在laravel中,我有一个可变子域,例如:{subdomain} .mysite.com因此,如果我转到green.mysite.com,它将加载例如green.css
我想以模块化方式使用sass并具有:
common.scss使用未定义变量(如颜色)对所有子域通用的所有样式
这里定义了green.scss颜色变量和一些东西
紫色主题的purple.scss变量
对于common.scss中的代码示例,我将具有以下内容:
#main-footer{
border-top: 4px solid $main;
}
在green.scss中:
/* COLORS */
$main: #8cc83d;
$second: #d38345;
这可能在SASS中以特定方式进行吗,还是我必须复制粘贴所有包含vars的代码?:/
创建一个sass部分,_vars.scss
然后在main.scss
使用之前将其导入。
例如:
_vars.scss
$color-main-theme: blue;
_header.scss
html {color: $color-main-theme;}
main.scss
@import "vars"
@import "header"
然后,当您的sass顺从下来时,您的var将被正确添加。另外,这使得在项目之间管理和更改代码变得非常容易。
正如@Ennui所说,您将需要三个单独的_vars.scss文件来完成所需的操作(包括在此处是为了完整性,以防任何人不看注释)。
基本上是agconti在回答中所说的,但是您需要3个单独的_vars.css定义文件和3个单独的main.scss文件(每个站点一个),每个文件分别导入_common.scss主样式和_vars.css文件配色方案。– Ennui 3分钟前
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句