【rails】railsでFontAwesomeを使うときの注意点
Ruby on RailsでFontAwesomeを使う方法はいくつかあるんですが、とても「ハマりポイント」が多く感じたので、そのポイントをまとめます。
(ちなみにこの記事は2019年12月に書いてます)
どのgemを使うか
大きく2種類のgemがあります。
どうやら最新のアインコンを使おうとすると「 font-awesome-sass 」が必要なんですがそうすると「 font-awesome-rails 」で使えていたヘルパーメソッドが使えなくなります。
具体的には以下のメソッドが使えません。
<%= fa_icon "アイコン名" %> <%= fa_stacked_icon("アイコン名", base: "アイコン名") %>
代わりに以下のメソッドを使うことになります。
<%= icon("スタイル名", "アイコン名") %>
「fa_stacked_icon」に対応するヘルパーメソッドはまだなさそうです。
擬似要素(:before)を使うときの注意点
擬似要素でFontAwesomeを使うときの注意点です。
以下のサイトに詳しく書いてあるのでポイントだけ
FontAwesomeでアイコンが□(四角)になって表示されない場合の対策まとめ(:after:before利用時) - ウェブ企画ラボ
- font-familyには「 Free 」をつける
- font-weightを指定する(アイコンの種類によって異なる)
- contentではバックスラッシュ「 \ 」を忘れずに
a:before { font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f104"; padding-right : 5px; }
Railsを再起動する
私が一番悩んだところです(笑)
FontAwesomeを導入するときはRailsを再起動しましょう。
参考URL
RailsでFont Awesomeを導入する際の注意点 - Qiita
gem 'font-awesome-rails'は最新版に対応してない... 代わりにfont-awesome-sassを使おう! - Qiita
【Rails】font-awesome-railsの使い方を徹底解説! | Pikawaka - ピカ1わかりやすいプログラミング用語サイト
FontAwesomeでアイコンが□(四角)になって表示されない場合の対策まとめ(:after:before利用時) - ウェブ企画ラボ
【保存版】Font Awesomeの使い方:Webアイコンフォントを使おう
Font Awesome 5 Freeで疑似要素(:after,:before)のcontent指定する場合 - Qiita
GitHub - FortAwesome/font-awesome-sass: Font-Awesome Sass gem for use in Ruby/Rails projects