Css 在Rails中,如何更改基于URL导入的样式
在Rails 4.2中,我想从使用“物化”来设置视图样式过渡到使用“Material Design Lite” 物化样式要求我有Css 在Rails中,如何更改基于URL导入的样式,css,ruby-on-rails,materialize,material-design-lite,Css,Ruby On Rails,Materialize,Material Design Lite,在Rails 4.2中,我想从使用“物化”来设置视图样式过渡到使用“Material Design Lite” 物化样式要求我有@import'Materialize'和MDL样式要求我具有@import'material'在同一文件中 我的问题是,当我导入Materialize样式时,它会破坏MDL样式。如果我删除了Materialize import语句,MDL样式将正常工作,但是我没有转换为MDL样式的任何页面都将完全取消样式设置 这是一个太大的应用程序,无法一次性过渡到MDL。我希望在转
@import'Materialize'application.scss
中的code>和MDL样式要求我具有@import'material'代码>在同一文件中
我的问题是,当我导入Materialize样式时,它会破坏MDL样式。如果我删除了Materialize import语句,MDL样式将正常工作,但是我没有转换为MDL样式的任何页面都将完全取消样式设置
这是一个太大的应用程序,无法一次性过渡到MDL。我希望在转换过程中使用MDL设置一些页面的样式,而使用Materialize设置其他页面的样式
有没有办法让用户在哪个页面上查看应用程序.scss
中的导入语句有条件?我从应用程序.scss
中删除了materialize导入语句,然后在视图/布局/应用程序.html.erb
中设置了条件,它根据当前路径设置了一个标志。如果当前路径是已转换为MDL的路径,则它会将MDL
标志设置为true。(当前仅转换登录页面。)
然后在页面头部,我通过CDN导入MaterializeCSS和js,除非页面使用MDL
<% unless mdl %>
<!-- Compiled and minified CSS and JS for Materialize -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/js/materialize.min.js"></script>
<% end %>
我认为这样做的结果是,物化不再在资产管道中,这可能会让事情慢一点,直到过渡完成
我现在还有两个标题栏部分,我根据mdl
标志呈现正确的部分
<% unless mdl %>
<!-- Compiled and minified CSS and JS for Materialize -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.98.0/js/materialize.min.js"></script>
<% end %>