【rails】オリジナルアプリをレスポンシブデザインにしてみました。(画像がはみでる、heroku上で画像が表示されない)
オリジナルアプリをheroku上で公開したところ、スマホで見るとブラウザで見るのと同じような形になっていたのでレスポンシブデザインにしてみました。
Rails4 レスポンシブデザインについてを参考にし、
以下を application.html.erb に記述しました。
(略)
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" />
(略)
レスポンシブになったけど、画像が収まっていない…
解決方法
(参考)
こちらの質問→Railsで表示画面(ブラウザ)の大きさに合わせて表示画像の大きさをコントロールする方法を教えてください。
にあった、こちらのサイトに解決方法がありました。CSS でイメージをデバイスの幅に合わせて表示する
最初、home.html.erbにこのように記載をしておりましたが、
<!-- First Container -->
<div class="container-fluid bg-1 text-center">
<%= image_tag 'catchcopy2.png' %>
<br></br>
<%= image_tag 'IMG_3573.png',:size => '300x260' %>
<br></br>
<%= image_tag 'logo.png'%>
</div>
↓以下のようにCSSに対応できるように修正しました。
<!-- First Container -->
<div class="container-fluid bg-1 text-center">
<img src='/assets/catchcopy2.png' />
<br></br>
<img src='/assets/IMG_3573.png', width="300",height="260" />
<br></br>
<img src='/assets/logo.png' />
</div>
そしてCSSに以下を追加。
img {
max-width: 100%;
height: auto;
}
ブラウザで見ると画像が表示されていますが、スマホで見ると…
おや( ^ω^)・・・レスポンシブにはなってそうですが、なぜか画像が表示されない・・・
解決方法については、まずはこちら:【Rails開発】assets/images以下の画像がHerokuで読み込まれないときの対処法
のサイトから引用
bundle exec rake assets:precompile
という謎のコマンド。
本番環境(production)環境では,これらスタイルファイル(css.scss)を結合して1つの application.css として読み込まれる様に,次のようなコマンドで,事前にコンパイルしておくのです.
この結果,public/assets/ にその結果の application.css が作成されますので,Railsはそこを読み込むようになりますだそうです。本番環境でも開発環境のassets以下の更新内容を読み込むためには、上のコマンドを実行してコンパイルする必要があるみたいです。
コマンドを実行。herokuへpush!
しかし画像はまだ表示されません…
こちらのサイトに書いてありました!
Herokuに(ちゃんと)デプロイしてみた。
ということで、config/environments/production.rbに設定を追加。
config.assets.compile = true
これで、一応動くようになりました。
結果、表示されました!
今日はただ単にコードを書き写しただけなので、アセットパイプライン等についてのまとめは次のメモで整理しようと思います。
今日のエラーは以上です。
Author And Source
この問題について(【rails】オリジナルアプリをレスポンシブデザインにしてみました。(画像がはみでる、heroku上で画像が表示されない)), 我々は、より多くの情報をここで見つけました https://qiita.com/_ayk_study/items/9bf170bc5954a1bb364e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .