1

我正在使用 SASS 生成我的 css 文件,并且有 2 个版本。根据用户来自的 url,他们应该有不同的配色方案。我想将颜色添加到 sass 变量中,然后在加载站点时加载正确的变量。但我不知道如何根据 $_SERVER['SERVER_NAME'] 变量加载变量。

谁能帮助我?

所以一般来说我需要类似的东西:

if(strstr($_SERVER['SERVER_NAME'], "foo.com")) {
@import("foo");
} else {
@import("bar");
}
4

1 回答 1

0

首先,您不能将@import指令放在条件指令中。

但是您可以从动态路径导入:

$path: server-name();
@import #{$path};

UPD:这是错误的,您不能使用变量导入。

server-name()在 SASS 中使用该功能,您需要 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自动设置。

于 2013-04-15T07:28:25.880 回答