Je m'excuse si c'est une question très simple, mais comment utiliser les icônes matérielles google sans
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
?
Je souhaite que mon application puisse afficher les icônes même lorsque l'utilisateur n'a pas de connexion Internet
javascript
html
cordova
materialize
Luke Tan
la source
la source
Réponses:
Méthode 2. Guide du développeur auto-hébergement
Téléchargez la dernière version de github (assets: fichier zip), décompressez et copiez le dossier iconfont, contenant les fichiers d'icônes de conception matérielle, dans votre projet local - https://github.com/google/material-design-icons/ communiqués
Il vous suffit d'utiliser le dossier iconfont de l'archive: il contient les polices d'icônes dans les différents formats (pour la prise en charge de plusieurs navigateurs) et le css standard.
Packages NPM / Bower
Google a officiellement une option de dépendance Bower et NPM - suivez le guide des icônes matérielles 1
Utilisation du bower :
bower install material-design-icons --save
Utilisation de NPM :
npm install material-design-icons --save
Icônes de matériau : Vous pouvez également consulter la police d'icônes de conception matérielle et le cadre CSS pour l'hébergement automatique des icônes, sur https://marella.me/material-icons/ de @ marella
Remarque
la source
iconfont
dossier de l'archive entière.Je construis pour Angular 4/5 et je travaille souvent hors ligne, donc ce qui suit a fonctionné pour moi. Installez d'abord le NPM:
Ajoutez ensuite ce qui suit à styles.css:
la source
Les approches supérieures ne fonctionnent pas pour moi. Je télécharge les fichiers depuis github, mais le navigateur n'a pas chargé les polices.
Ce que j'ai fait a été d'ouvrir le lien source de l'icône matérielle:
https://fonts.googleapis.com/icon?family=Material+Icons
et j'ai vu ce balisage:
J'ouvre le lien URL de la police woff https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2
et téléchargez le fichier woff2.
Ensuite, je remplace le chemin du fichier woff2 par le nouveau dans material-icons.css
Cela fait que les choses fonctionnent pour moi.
la source
Si vous utilisez un projet webpack, après
tu as juste besoin de
la source
import materialIcons from 'material-design-icons/iconfont/material-icons.css'
. On ajoute cette ligne à où? app.js ou ailleurs. J'utilise framework7 avec Vue et j'ai essayé. Cela n'a pas fonctionné pour moi.Cela peut être une solution simple
Obtenez ce référentiel qui est un fork du référentiel original publié par Google.
Installez-le avec bower ou npm
Importez le fichier css sur votre page HTML
ou
Test: ajoutez une icône à l'intérieur de la balise body de votre fichier HTML
Si vous voyez l'icône de visage, vous allez bien.
Si cela ne fonctionne pas, essayez d'ajouter ceci
..
comme préfixe aunode_modules
chemin:la source
mat-icon
composant standard de Angular . Ainsi, la transition est transparente.@import"../node_modules/material-design-icons-iconfont/dist/material-design-icons.css";
Ensuite, mes icônes hébergées localement ont pris vieMa recette comporte trois étapes:
pour installer le package material-design-icons
pour importer le fichier material-icons.css dans un fichier / projet .less ou .scss
pour inclure le code recommandé dans le fichier / projet reactjs .js
la source
Utilisez material-design-icons-iconfont
J'ai créé material-design-icons-iconfont pour résoudre ces problèmes majeurs:
npm install
- tous les fichiers svg / xml / ... non pertinents ont été supprimésGoogle Fonts
CDNInstaller via
npm
Cela dépend de la manière dont vous compressez votre application Web (
webpack
/gulp
/bower
/ ...), vous devrez importer le fichier.css
/.scss
(et vous pourriez changer le chemin des polices relatives)Importer à l'aide de SCSS
Importez dans l'un de vos fichiers sass
Plus tard, référencez votre icône souhaitée
<i class="material-icons">
+ icon-id +</i>
Page de démonstration
Il est livré avec une page de démonstration légère pour faciliter la recherche et le copier-coller des polices
la source
J'ai essayé de compiler tout ce qui doit être fait pour les icônes auto-hébergées dans ma réponse. Vous devez suivre ces 4 étapes simples.
Ouvrez le dossier iconfont du référentiel materialize
lien- https://github.com/google/material-design-icons/tree/master/iconfont
Téléchargez ces trois fichiers d'icônes ->
MaterialIcons-Regular.woff2 - format ('woff2')
MaterialIcons-Regular.woff - format ('woff')
MaterialIcons-Regular.ttf - format ('vrai type');
Remarque - Après le téléchargement, vous pouvez le renommer comme vous le souhaitez.
Maintenant, allez dans votre CSS et ajoutez ce code
Remarque: L'adresse fournie dans src: url (...) doit correspondre au 'Fichier CSS' et non au fichier index.html. Par exemple, il peut s'agir de src: url (../ myicons / MaterialIcons-Regular.woff2)
Cliquez ici pour voir toutes les icônes qui peuvent être utilisées.
la source
Après avoir fait
npm install material-design-icons
, ajoutez ceci dans votre fichier CSS principal:la source
Avec cli angulaire
ou
material-design-icons-iconfont est la dernière version mise à jour des icônes. angular-material-icons n'est pas mis à jour depuis longtemps
Attendez, attendez que l'installation soit terminée, puis ajoutez-la à angular.json -> projets -> architect -> styles
ou si vous avez installé material-desing-icons-iconfont alors
la source
Mise à jour 2019 ici:
Pour auto-héberger vos icônes matérielles, les Regular, Rounded, Sharp, toutes les variantes. Allez les chercher dans ce repo: https://github.com/petergng/material-icon-font
Pour une raison quelconque, je ne sais pas pourquoi ces polices ne sont pas facilement accessibles à partir des référentiels Google.
Mais voilà.
Après avoir téléchargé le package, allez dans le dossier bin et vous verrez les quatre variantes. Bien sûr, c'est à vous d'utiliser celui-ci.
Pour les utiliser, créez un fichier css et
Le
url
lien vers l'emplacement des icônes dans votre projet.Cela fera à la fois
.material-icons-outlined,
et les.material-icons
classes utilisent les mêmes valeurs par défaut. Si vous souhaitez l'utiliser.material-icons-sharp
, ajoutez-le simplement aux deux noms de classe.Encore une fois, pour utiliser plus de variante, comme Sharp, ajoutez simplement son bloc comme les deux ci-dessus.
Une fois fait ... allez dans votre html et utilisez vos icônes nouvellement créées.
la source
Sur http://materialize.com/icons.html les informations d'en-tête de style que vous incluez dans la page, vous pouvez accéder au lien hypertexte réel et faire des copies localisées pour utiliser les icônes hors ligne.
Voici comment faire: NB: Vous allez télécharger deux fichiers dans all icon.css et somefile.woff .
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
.Enregistrez la page sous n'importe quel nom de fichier.css. La valeur par défaut est icon.css
src: local('Material Icons'), local('MaterialIcons-Regular'), url(https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2)
https://fonts.gstatic.com/s/materialicons/v22/2fcrYFNaTjcS6g4U3t-Y5ZjZjT5FdEJ140U2DJYC3mY.woff2
. Votre navigateur le téléchargera automatiquement. Enregistrez-le dans votre dossier CSS.Vous devriez maintenant avoir les deux fichiers icon.css et 2fcrYFNa .... mY.wof22 , enregistrez-les tous les deux dans votre css. Maintenant, modifiez l'emplacement de votre en-tête css sur icon.css dans vos répertoires. Assurez-vous simplement que le fichier .woff2 est toujours dans le même dossier que icon.css. N'hésitez pas à modifier les noms de fichiers longs.
la source
Le titre de la question demande comment héberger les icônes matérielles hors ligne, mais le corps précise que l'objectif est d' utiliser les icônes matérielles hors ligne (c'est moi qui souligne) .
L'utilisation de votre propre copie des fichiers d'icônes de matériaux est une approche / implémentation valide. Un autre, pour ceux qui peuvent utiliser un service worker est de laisser le service worker s'en occuper. De cette façon, vous n'aurez pas les tracas d'obtenir une copie et de la tenir à jour.
Par exemple, générez un service worker à l'aide de Workbox , en utilisant l'approche la plus simple d'exécution de workbox-cli et en acceptant les valeurs par défaut, puis ajoutez le texte suivant au service worker généré:
Vous pouvez ensuite vérifier qu'il a été mis en cache dans Chrome en utilisant F12> Application> Stockage> IndexedDB et recherchez une entrée avec googleapis dans le nom.
la source
À partir de 2020, mon approche consiste à utiliser le package material-icons-font . Il simplifie l'utilisation de Google icônes-conception-matériel de l' emballage et la communauté à base de matériel de conception-icônes iconfont .
Installez le package.
npm install material-icons-font --save
Ajoutez le chemin du fichier CSS du package à la propriété style du fichier angular.json de votre projet.
... "styles": [ "./node_modules/material-icons-font/material-icons-font.css" ], ...
Si vous utilisez SCSS, copiez le contenu ci-dessous en haut de votre fichier styles.scss.
@import '~material-icons-font/sass/variables'; @import '~material-icons-font/sass/mixins'; $MaterialIcons_FontPath: "~material-icons-font/fonts"; @import '~material-icons-font/sass/main'; @import '~material-icons-font/sass/Regular';
Utilisez les icônes du fichier HTML de votre projet.
Les icônes de @ angular / material ont tendance à se briser lors du développement hors ligne. L'ajout du package material-icons-font en conjonction avec @ angular / material vous permet d'utiliser la balise tout en développant hors ligne.
la source
Installer le package npm
Placez le chemin du fichier css dans le fichier styles.css
la source
La méthode Kaloyan Stamatov est la meilleure. Allez d'abord sur https://fonts.googleapis.com/icon?family=Material+Icons . et copiez le fichier css. le contenu ressemble à ceci
Collez la source de la police dans le navigateur pour télécharger le fichier woff2 https://fonts.gstatic.com/s/materialicons/v37/flUhRq6tzZclQEJ-Vdg-IuiaDsNc.woff2 Puis remplacez le fichier dans la source d'origine. Vous pouvez le renommer si vous le souhaitez. Pas besoin de télécharger un fichier de 60 Mo à partir de github. Dead simple Mon code ressemble à ceci
tandis que materialIcon.woff2 est le fichier woff2 téléchargé et remplacé.
la source
et
travaillé aussi pour moi avec Angular Material 8
la source
Ajouté ceci à la configuration Web et l'erreur a disparu
la source
Au fait, une vidéo est disponible sur youtube avec des instructions étape par étape.
https://youtu.be/7j6eOkhISzk
Voici les étapes. Téléchargez le package d'icônes Materialise sur https://github.com/google/material-design-icons/releases
Copiez le dossier icon-font et renommez-le en icônes.
Ouvrez le fichier materialize.css et mettez à jour les chemins suivants:
une. de l'url (MaterialIcons-Regular.eot) à l'url (../ fonts / MaterialIcons-Regular.eot) b. du format url (MaterialIcons-Regular.woff2) ('woff2') au format url (../ fonts / MaterialIcons-Regular.woff2) ('woff2') c. du format url (MaterialIcons-Regular.woff) ('woff') au format url (../ fonts / MaterialIcons-Regular.woff) ('woff') d. du format url (MaterialIcons-Regular.ttf) ('truetype') au format url (../ fonts / MaterialIcons-Regular.ttf) ('truetype')
Tout fonctionnera comme par magie!
la source