Angular Material Icons Not Working
Answer :
Add CSS stylesheet for Material Icons!
Add the following to your index.html:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
Refer - https://github.com/angular/material2/issues/7948
For Angular 6+:
- npm install this:
npm install material-design-icons
add the styles to angular.json:
"styles": [ "node_modules/material-design-icons/iconfont/material-icons.css" ]
If using SASS you only need to add this line to your main .scss
file:
@import url("https://fonts.googleapis.com/icon?family=Material+Icons");
If you prefer to avoid fetching icons from google you can also self-host the icons as described in Material Icons Guide:
For those looking to self host the web font, some additional setup is necessary. Host the icon font in a location, for example https://example.com/material-icons.woff and add the following CSS rule:
@font-face { font-family: 'Material Icons'; font-style: normal; font-weight: 400; src: url(https://example.com/MaterialIcons-Regular.eot); /* For IE6-8 */ src: local('Material Icons'), local('MaterialIcons-Regular'), url(https://example.com/MaterialIcons-Regular.woff2) format('woff2'), url(https://example.com/MaterialIcons-Regular.woff) format('woff'), url(https://example.com/MaterialIcons-Regular.ttf) format('truetype'); }
.material-icons { font-family: 'Material Icons'; font-weight: normal; font-style: normal; font-size: 24px; /* Preferred icon size */ display: inline-block; 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'; }
Comments
Post a Comment