所以我在我的Rails应用程序的Internet Explorer中遇到了一些CSS和Javascript错误。问题是,当资产未编译时,一切正常。但是,一旦资产被编译成一个application.css和一个application.js,我就开始遇到很多问题(并且只在Internet Explorer 7,8,9中)。知道为什么会这样吗?我不需要确切的答案来确定错误,但只需要注意一些事情来帮助我开始寻找修复。
基本上,为什么编译资产会导致问题?
答案 0 :(得分:3)
欢迎使用IE 4095选择器限制错误:IE忽略css文件中第4095个选择器之后的所有内容。
http://support.microsoft.com/kb/262161
您可以在此处测试此案例:http://marc.baffl.co.uk/browser_bugs/css-selector-limit/
您的单个css文件不会扩展此数量(希望如此)但所有css文件合并 - 可能。
如果您使用jammit进行压缩,可以通过编辑assets.yml文件来拆分压缩的资源文件:
stylesheets:
common:
file1.css
file2.css
other:
file3.css
file4.css
jammit会将您的文件拆分为common.css和other.css 不要忘记在视图中调用这些文件:
<%= include_stylesheets :common, :media => 'all' -%>
<%= include_stylesheets :other, :media => 'all' -%>
答案 1 :(得分:0)
您是否在布局中使用任何特定于IE的样式表或Java代码..
喜欢
<!--[if IE ] --><%= stylesheet_link_tag 'ie' %><!-- [endif]-->
如果是,那么你需要添加类似这样的东西
config.assets.precompile += %w(ie.css)
或者它可能是压缩问题 config.assets.compress == false
或者如果您正在使用任何第三方CSS内容,例如css3pie等