在我的样式表目录中,我有application.css
,ie_fixes.css
和themes
目录。 themes目录中包含大约20个css文件。所有这些样式表,减去ie_fixes,都需要应用程序范围,因此它们包含在应用程序布局中。当用户的浏览器是IE时,只需要包含ie_fixes.css。我希望能够在一个简洁的代码行中将所有内容都包含在themes文件夹中。
Rails提供了一种简单的方法来包含所有样式表:
stylesheet_link_tag :all, :recursive => true
很奇怪,但问题是它在每个浏览器中包含我的ie_fixes.css
,将我的IE条件评论从水中吹走。所以我的问题是,是否有一种简单的方法可以为子目录包含所有样式表而无需指定每个文件名?
我尝试了stylesheet_link_tag 'themes/', :recursive => true
的不同变体无济于事。似乎所有这个方法都是在stylehseet目录前加上并在必要时追加.css。
答案 0 :(得分:2)
一个解决方案是将所有CSS文件(IE浏览器除外)合并到一个文件中。然后根据需要包含IE特定文件。
无论如何你都想这样做,因为20个http连接(最多2次)将永远。
答案 1 :(得分:1)
你可以把它包含在另一个目录中,并在head标签的条件IE语句中,将它指向该目录吗?
这仍然可以让你获得精美的样式表:所有你需要的时候。
答案 2 :(得分:1)
在网上搜索看似年龄的东西而没有找到任何东西之后,我终于决定按照自己的方式行事。我期望在将来的项目中再次使用它,所以我将其创建为插件。