モバイル向けのRailsアプリのスタイリング方法を検討しています。Rails 3でのモバイルスタイルの切り替え、ヘルパーメソッドとメディアクエリの比較
モバイルブラウザ用に1組のスタイルを使用し、伝統的なスタイル用に1組のスタイルを使用するという考え方が一般的です。
私はRailsの中でこれを行うための2つの基本的な方法があります伝えることができるものから、:
ユーザーエージェントを検出し、スイッチをプリフォームするヘルパーメソッドを使用しては。
スタイルシートでapplication_controller.rb
private
def mobile?
request.user_agent =~ /Mobile|webOS/
end
helper_method :mobile?
application.html.erb
<% unless mobile? %>
<%= stylesheet_link_tag "core" %>
<%else%>
<%= stylesheet_link_tag "mobile" %>
<meta name="viewport" content="width=320; initial-scale=1.0; maximum-scale=1.0; user-scalable=0;"/>
<% end%>
またはメディアクエリを使用して
body {
// basic styles
}
@media all and (max-width: 600px) {
body {
// extra styles for mobile
}
}
@media all and (min-width: 600px) {
body {
// extra styles for desktop
}
}
私の質問は、トレードオフは何をしているのですか? 1つの方法が一般的に優れているか、両方のために良いユースケースがありますか。
ありがとうございます。