在CSS文件中访问Ruby中的Locale

Cod*_*123 3 css ruby locale ruby-on-rails ruby-on-rails-3

所以我在项目中使用CSS,JS和Ruby.现在我有我的位置设置等,在红宝石,但我想在我的CSS文件上访问它们.这是为特定区域设置自定义视图.我在我的控制器中完成了以下操作.

 before_filter :set_locale

 private

 def set_locale
    @locale ||= params[:locale] || session[:locale] || I18n.default_locale
      I18n.locale = session[:locale] = @locale
 end
Run Code Online (Sandbox Code Playgroud)

如何在CSS文件中访问此设置位置?例如,如果位置是俄罗斯,那么使高度200像素或类似的东西.

kr0*_*lix 8

您可以将当前区域设置添加到html标记为lang.例如

%html{lang: I18n.locale}
<html lang="en"> or <html lang="ru">
Run Code Online (Sandbox Code Playgroud)

并使用语言前缀添加特定语言样式

html[lang="en"] {
  # for english part
}

html[lang="ru"] {
  # for russian part
}
Run Code Online (Sandbox Code Playgroud)

你也可以改变现有类的行为

.test-title {
  html[lang="en"] & {
    // specific english style
  }
}
Run Code Online (Sandbox Code Playgroud)