現在、CSS疑似要素でアイコンを使用することに混乱しています。 fontawesomeには4種類のフォントファミリーがあります:Font Awesome 5 Free
、Font Awesome 5 Solid
、Font Awesome 5 Brands
、Font Awesome 5 Regular
HTMLは次のとおりです。
<h1>Hello</h1>
私はこのアイコンを使用します: https://fontawesome.com/icons/twitter?style=brands
ご覧のように、これはbrands
アイコンなので、font-family:Font Awesome 5 Brands
h1:before {
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
content: "\f099"; /* Twitter ICON */
font-family: "Font Awesome 5 Brands";
font-weight: 400;
}
できます!
私はこのアイコンを使用します: https://fontawesome.com/icons/phone?style=solid
ご覧のように、これはsolid
アイコンなので、font-family:Font Awesome 5 Solid
h1:before {
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
content: "\f095"; /* PHONE ICON */
font-family: "Font Awesome 5 Solid";
font-weight: 900;
}
動かない!
何が悪かったのですか?
正しいfont-familyをいつ使用するかはどのようにしてわかりますか?
それらすべてを同じfont-family
で使用するだけで、ブラウザが機能します。最初のものでそれが見つからない場合は、2番目のものを使用します。 ( Font-Familyプロパティの複数のフォント? )
ちなみに、正しいfont-family
はFree
ではなくSolid
です。これは、Solidとの違いによるものです。 Regularはfont-weight
であり、両方に同じfont-family
があります。 ありませんfont-familyにはSolid
とRegular
があり、Free
とBrands
。
また、アイコンのほとんどすべてのSolid
バージョンは無料ですが、すべてのregular
バージョンが無料であるとは限りません。それらのいくつかは、PROパッケージに含まれています。アイコンが表示されない場合必ずしも必要ではありませんfont-family
の問題。
Light
およびduotone
バージョンはすべてPROバージョンです。
.icon {
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
font-family: "Font Awesome 5 Brands","Font Awesome 5 Free";
}
.icon1:before {
content: "\f099";
/* Twitter ICON */
font-weight: 400;
}
.icon2:before {
content: "\f095";
/* PHONE ICON */
font-weight: 900;
}
.icon3:before {
content: "\f095";
/* PHONE ICON */
font-weight: 400;/*This one will not work because the regular version of the phone icon is in the Pro Package*/
}
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.11.0/css/all.css" >
<div class="icon1 icon"></div>
<div class="icon2 icon"></div>
<br>
<div class="icon3 icon"></div>
リファレンス: https://fontawesome.com/how-to-use/on-the-web/advanced/css-pseudo-elements#define
font-weight
の問題に関連する質問: 疑似要素のFont Awesome 5はアイコンではなく正方形を示します