recherche
Maisoninterface Webtutoriel CSSATOZ CSS Screencast: Unicode Range et @ FONT-FACE

AtoZ CSS Screencast: Unicode Range and @font-face

Résumé des points clés

    Les règles
  • de CSS @font-face permettent d'utiliser des polices personnalisées dans la conception Web, améliorant ainsi les performances et améliorant la typographie. Assurez-vous de tester ces polices personnalisées sur différents systèmes d'exploitation et navigateurs pour vous assurer qu'ils apparaissent correctement.
  • La propriété
  • CSS unicode-range peut être utilisée pour limiter la plage de caractères des polices personnalisées à appliquer. Ceci est particulièrement utile pour ajouter des caractères ou des symboles spéciaux directement à la balise, ou en utilisant des polices spéciales pour des caractères spécifiques.
  • En utilisant la propriété unicode-range, vous pouvez améliorer les performances de la page Web en vous assurant que seuls les caractères nécessaires sont téléchargés et utilisés, réduisant ainsi la quantité de données qui doivent être chargées. Cependant, il est important de noter que tous les navigateurs ne prennent pas en charge cette propriété, donc des polices alternatives doivent être fournies dans le code CSS.

Explication vidéo (extrait du projet de texte)

Dans la section précédente, nous avons appris divers attributs de style de texte.

Dans les navigateurs modernes (et IE4 et plus tard), nous pouvons ajouter Polices personnalisées pour améliorer la conception du site Web.

Nous pouvons utiliser les différentes fonctionnalités de ces polices personnalisées pour aider à améliorer les performances et à améliorer la typographie globale.

Nous apprendrons cette section:

  • @font-face Explication détaillée des règles
  • comment utiliser la pile de polices et unicode-range pour contrôler la typographie

@font-face

Dans le passé, la sélection des polices sur les pages Web était limitée à un petit nombre de polices de "sécurité du réseau", telles que:

  • Arial
  • Comic Sans
  • Courier New
  • Géorgie
  • Impact
  • Palatino
  • tahoma
  • fois nouveau Roman
  • Trebuchet
  • Verdana

Certaines de ces polices sont excellentes et parfaites pour les pages Web - la Géorgie est une police Serif, Arial ou Verdana sont de grandes polices. Comic Sans n'est certainement pas le meilleur ...

Mais maintenant, nous pouvons utiliser une variété de polices personnalisées et la faire apparaître sur tous les navigateurs en utilisant @font-face.

Bien que nous puissions le faire , il vaut toujours la peine de tester toutes les polices personnalisées sur une gamme de systèmes d'exploitation et de navigateurs pour s'assurer qu'ils ressemblent comme prévu.

N'oubliez pas non plus que les fichiers de police peuvent être de taille assez grande, alors utilisez-les judicieusement pour éviter les problèmes de performances.

La syntaxe de

est la suivante: @font-face

Les polices
@font-face {
  font-family: 'Baskerville';
  src: url('baskerville.eot?#iefix') format('embedded-opentype'); 
  url('baskerville.woff') format('woff'); 
  url('baskerville.ttf') format('truetype');
  url('baskerville.svg#Baskerville') format('svg');
}
sont nommées à l'aide de l'attribut

, puis fournissent une gamme de différents types de fichiers et formats pour différents navigateurs. font-family

Pour éviter aux utilisateurs de télécharger des polices existantes dans le système, vous pouvez spécifier le nom local de la police à rechercher

. local()

Pour créer tous les formats de police corrects pour différents navigateurs, j'ai utilisé une excellente ressource en ligne appelée Font Squirrel.

Ils ont un générateur de polices Web qui fonctionne très bien. Le téléchargement qu'ils fournissent comprend également tous les extraits de code pour ajouter ces polices personnalisées dans CSS, ce qui est également pratique!

unicode-range

Chaque caractère d'une police peut être décrit par son numéro Unicode, sous la forme:

@font-face {
  font-family: 'Baskerville';
  src: url('baskerville.eot?#iefix') format('embedded-opentype'); 
  url('baskerville.woff') format('woff'); 
  url('baskerville.ttf') format('truetype');
  url('baskerville.svg#Baskerville') format('svg');
}

La chaîne "AToz CSS" peut être représentée par Unicode comme suit:

<code>U+0041</code>

Chaque caractère, y compris les espaces, a un numéro Unicode unique. Le jeu de caractères UTF-8 contient également une série de caractères spéciaux, qui est utile pour ajouter des formes et des symboles directement au balisage.

Lors de l'ajout de polices personnalisées avec @font-face, nous pouvons limiter la gamme de personnages qu'ils appliquent, ce qui, à première vue, est un peu bizarre, mais soyez patient avec moi pour expliquer.

Le symbole italique de la police de Baskerville est très beau et de nombreux designers aiment l'utiliser même s'ils n'utilisent pas le reste de la police de Baskerville.

Une façon d'utiliser cette police spéciale pour l'ampère et uniquement est de l'envelopper dans la balise <span></span> et de définir un autre font-family pour cela. Mais c'est un peu lourd et peut être fait complètement sans marquage supplémentaire.

Nous pouvons créer une police qui ne contient que ce caractère et l'ajouter à notre pile de polices comme la première police de la liste.

Lorsque le navigateur rencontre un caractère qui n'existe pas dans la police, il scannera la pile jusqu'à ce qu'il trouve la police contenant les caractères requis. Nous pouvons profiter de ce comportement pour ajouter des ampères et des ampères spéciales lors de l'utilisation d'une police personnalisée ou de sécurité réseau.

Tout d'abord, nous créons la règle @font-face pour charger une police à un seul caractère. Je vais le nommer "AmperSand" et utiliser une source de fichier de police locale pour enregistrer la bande passante.

Je spécifie unicode-range comme u 0026 pour un seul caractère ampère et. La gamme complète de caractères peut être spécifiée, comme le montre le nom de la propriété, mais dans ce cas, un seul caractère est requis.

<code>A      t      o      Z      space  C      S      S
U+0041 U+0074 U+006F U+005A U+0020 U+0043 U+0053 U+0053</code>

Dans cet exemple de fichier HTML, j'ai une série de titres et de paragraphes, qui contiennent tous deux plusieurs symboles.

Je vais créer deux piles de polices différentes, une pour le titre et une pour le corps. Dans chaque cas, la première police de la pile sera une police "AmperSand" personnalisée.

Pour les titres, j'ajouterai des polices Museo ou Rockwell ou Serif comme polices alternatives.

Pour le corps, j'ajouterai Avenir, Arial ou Sans-Serif comme police alternative.

@font-face {
  font-family: 'Ampersand';
  src: local('Baskerville-italic');
  unicode-range: U+0026;
}

c'est tout. Lorsque le navigateur rend le texte, la première police de la pile ne contient qu'un seul caractère Ampersand, il rendra donc le reste des caractères en utilisant la police suivante de la liste (si elle est trouvée).

La prise en charge du navigateur

unicode-range est bonne. Il est pris en charge dans tous les navigateurs modernes (sauf Firefox) ainsi que dans IE9 et plus tard. Comme il s'agit d'une amélioration purement visuelle, le support du navigateur n'est pas un gros problème pour moi - les navigateurs non pris en charge n'obtiendront que la première police de la pile qui peut être chargée avec succès.

(La partie FAQ suivante a été omise car elle ne correspond pas à l'objectif pseudo-original et est trop long. Le contenu central s'est reflété dans les parties ci-dessus.)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Simulation du mouvement de la sourisSimulation du mouvement de la sourisApr 22, 2025 am 11:45 AM

Si vous avez jamais eu à afficher une animation interactive lors d'un discours en direct ou d'une classe, vous savez peut-être que ce n'est pas toujours facile d'interagir avec vos diapositives

Alimentation de recherche avec Astro Actions et Fuse.jsAlimentation de recherche avec Astro Actions et Fuse.jsApr 22, 2025 am 11:41 AM

Avec Astro, nous pouvons générer la plupart de notre site pendant notre version, mais avoir un petit peu de code côté serveur qui peut gérer les fonctionnalités de recherche en utilisant quelque chose comme Fuse.js. Dans cette démo, nous utiliserons du fusible pour rechercher un ensemble de «signets» personnels

Undefined: la troisième valeur booléenneUndefined: la troisième valeur booléenneApr 22, 2025 am 11:38 AM

Je voulais implémenter un message de notification dans l'un de mes projets, similaire à ce que vous verriez dans Google Docs pendant que un document enregistre. En d'autres termes, un

Pour défendre la déclaration ternairePour défendre la déclaration ternaireApr 22, 2025 am 11:25 AM

Il y a quelques mois, j'étais sur Hacker News (comme on le fait) et j'ai rencontré un article (maintenant supprimé) sur le fait de ne pas utiliser les déclarations. Si vous êtes nouveau dans cette idée (comme moi

Utilisation de l'API de discours Web pour les traductions multilinguesUtilisation de l'API de discours Web pour les traductions multilinguesApr 22, 2025 am 11:23 AM

Depuis les premiers jours de la science-fiction, nous avons fantasmé sur les machines qui nous parlent. Aujourd'hui, c'est monnaie courante. Même ainsi, la technologie de fabrication

Blocs de jetpack GutenbergBlocs de jetpack GutenbergApr 22, 2025 am 11:20 AM

Je me souviens quand Gutenberg a été libéré dans Core, parce que j'étais à WordCamp Us ce jour-là. Un certain nombre de mois se sont passés maintenant, donc j'imagine de plus en plus d'entre nous

Création d'un composant de pagination réutilisable dans VueCréation d'un composant de pagination réutilisable dans VueApr 22, 2025 am 11:17 AM

L'idée derrière la plupart des applications Web est de récupérer les données de la base de données et de la présenter à l'utilisateur de la meilleure façon possible. Quand nous traitons des données là-bas

En utilisant 'Box Shadows' et Clip-chemin ensembleEn utilisant 'Box Shadows' et Clip-chemin ensembleApr 22, 2025 am 11:13 AM

Laissez faire un peu étape par étape d'une situation où vous ne pouvez pas faire ce qui semble logique, mais vous pouvez toujours le faire avec la ruse CSS. En ce moment

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Dreamweaver Mac

Dreamweaver Mac

Outils de développement Web visuel

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Listes Sec

Listes Sec

SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser