ウェブサイトにGoogleマテリアルデザインのアイコンセットをホストしようとしていますが、ChromeまたはSafariでアイコンを表示できません。
私はこのCSSファイルを使用しています:
@font-face {
font-family: 'Material Icons';
font-style: normal;
font-weight: 400;
src: url(/public/dist/font/Material-Design-Icons.eot); /* For IE6-8 */
src: url(/public/dist/font/Material-Design-Icons.woff2) format('woff2'),
url(/public/dist/font/Material-Design-Icons.woff) format('woff'),
url(/public/dist/font/Material-Design-Icons.ttf) format('truetype');
}
.material-icons {
font-family: 'Material Icons';
font-weight: normal;
font-style: normal;
font-size: 24px; /* Preferred icon size */
display: inline-block;
width: 1em;
height: 1em;
line-height: 1;
text-transform: none;
letter-spacing: normal;
Word-wrap: normal;
white-space: nowrap;
direction: ltr;
/* Support for all WebKit browsers. */
-webkit-font-smoothing: antialiased;
/* Support for Safari and Chrome. */
text-rendering: optimizeLegibility;
/* Support for Firefox. */
-moz-osx-font-smoothing: grayscale;
/* Support for IE. */
font-feature-settings: 'liga';
}
以下を使用してファイルをプルします。
link(rel="stylesheet", href="/public/dist/css/font.css")
ブラウザで確認できるものを搭載
フォント自体もページに読み込まれ、Chromeのネットワークタブに.woffファイルが表示されます。
これは、サーバーによって「そのまま」ホストされるpublic
フォルダー構造です。
ここでフォントを使用しています(ヒスイ):
i.material-icons.prefix perm_identity
上記のCSSクラスがその要素に適用されていることがわかります
しかし、フォントはレンダリングされません。
編集:ここに同じ問題を抱えている人々: https://github.com/google/material-design-icons/issues/205
これは、materializecss.com Webサイトにある古いアイコンフォントが原因でした。GoogleGHリポジトリのフォントを使用したところ、動作しましたsigh
ウェブページで直接Googleマテリアルデザインアイコンを使用するだけです。詳細はこちら https://google.github.io/material-design-icons/ Google Webフォントスタイルシートを使用してこの問題を修正できました。この方法の方がはるかに簡単です。スタイルシートをWebページに含めるだけで、すべてのWebフォントアイコンクラスが読み込まれ、問題ありません。