我正在使用SASS生成我的css文件,有2个版本。根据用户来自的URL,他们应该有不同的配色方案。我想将颜色添加到sass变量中,然后在加载站点时加载正确的变量。但我不知道如何根据$ _SERVER ['SERVER_NAME']变量加载变量。
任何可以帮助我的人?
总的来说,我需要这样的东西:
if(strstr($_SERVER['SERVER_NAME'], "foo.com")) {
@import("foo");
} else {
@import("bar");
}
答案 0 :(得分:0)
首先,您不能将@import
指令放在条件指令中。
但您可以从动态路径导入:
$path: server-name();
@import #{$path};
UPD:这是假的,您无法使用变量导入。
要在SASS中拥有server-name()
功能,您需要Compass和一些自定义Ruby。
在指南针'config.rb
中添加:
# Assign a name to the project and pass it into SASS
$server_name = "monkey"
module Sass::Script::Functions
def server_name
Sass::Script::String.new($server_name)
end
end
在编译之前调整$server_name
。
CSS是静态的,因此您无法完全自动化。但是如果您使用的是Rails或Assetic等框架,则可以自动设置$server_name
。