目前有一个 Rails 项目,前端用的是 bootstrap。另外又做了一个基于 ratchet 的移动应用客户端,如果放在一个项目中时,这两套 CSS 框架有冲突,有相同的 class 类名,导致原来 web 应用的样式发生了变化。 但如果移动应用再新建一个 Rails 项目的话,原来的 Server API 无法很好地复用,业务逻辑都差不多。 怎么解决比较好呢?在一个项目中不同的 view 引用不同的 CSS?希望哪位大牛给予指点哈。
如果一个项目中需要两套完全不同的 CSS 和 JS,该如何操作?
已解决:挺简单,新建 application.mobile.css 和 application.mobile.js,不同的页面引用不同的文件即可。
rails4.1 不是对于移动支持很方便么?在 views 里对于同一个页面如果同时有*.html.*
和*.html+phone.*
的话,手机访问默认渲染+phone 的模版。layout 一样可以这样设置…然后手机和桌面版的 css/js 封装在两个文件中就可以了。
stylesheet_link_tag 里有个参数是:media,一般情况下我们都是:media => "all"
但是你的情况就可以。。。:media=> "handheld"
这是 html 的东东。。。建议参考 http://www.w3school.com.cn/tags/att_link_media.asp
不过你的问题是:
在一个项目中不同的 view 引用不同的 CSS?
那么应该是用不用的 layout 处理不同的 view 就可以。layout 里在根据自己情况引用不同的 css,毕竟不同的 view 布局和元素可能都不一样。。。
我上面说的 media 是根据同一个 view,使用终端不同或者用途不同的时候,使用不同的 css。。。