Ruby on rails 对于我的站点翻译(本地化)到的不同地区,是否可能有不同的样式表?

Ruby on rails 对于我的站点翻译(本地化)到的不同地区,是否可能有不同的样式表?,ruby-on-rails,localization,yaml,haml,Ruby On Rails,Localization,Yaml,Haml,我正在从项目的视图中提取字符串。当我这么做的时候,我正在测试不同的语言是什么样子的 在以拉丁字母形式呈现的语言中,我希望有一种防止孤立(包装字符串最后一行上的单个单词)的样式。在某些地方,我想触发换行,使事物始终出现在两行或一行上 然而,我很确定(因为我不会说中文,所以不确定)我不想包装中文。理想情况下,我甚至希望按从右到左的阅读顺序显示中文 不同语言(地区)是否可能有不同的显示代码?是 您可以使用针对每种语言的元素,还有一个实验性的:dir选择器,但支持有限 在Rails中,您可以加载其他特定

我正在从项目的视图中提取字符串。当我这么做的时候,我正在测试不同的语言是什么样子的

在以拉丁字母形式呈现的语言中,我希望有一种防止孤立(包装字符串最后一行上的单个单词)的样式。在某些地方,我想触发换行,使事物始终出现在两行或一行上

然而,我很确定(因为我不会说中文,所以不确定)我不想包装中文。理想情况下,我甚至希望按从右到左的阅读顺序显示中文

不同语言(地区)是否可能有不同的显示代码?

您可以使用针对每种语言的元素,还有一个实验性的
:dir
选择器,但支持有限

在Rails中,您可以加载其他特定于语言环境的样式表,如下所示:

# app/helpers/style_helper.rb
module StyleHelper
  def locale_stylesheet_link_tag(locale = I18n.locale)
     path = Rails.root.join('app', 'assets', 'stylesheets')
     if Dir.glob(path + "#{locale}.{css, scss, sass, less}").any?
       stylesheet_link_tag(locale.to_s)
     end
  end
end

#app/layouts/application.html.erb
...

如果区域设置为
en
,并且
app/assets/stylesheets
中存在
en.css
文件,则加载
en.css
,谢谢!这很有帮助。我今天下午会试试。我还没来得及测试,但我会把它标记为已回答。我测试完后会回来和大家分享。谢谢
# app/layouts/application.html.erb

<head>
  ...
  <%= locale_stylesheet_link_tag %>
</head>