Mon récent article sur les problèmes de soulignement CSS de Chrome a mis en évidence text-decoration-thickness
et l' text-underline-offset
, des propriétés CSS puissantes et largement soutenues offrant un contrôle plus fin.
Illustrons text-decoration-thickness
. Le soulignement par défaut d'Ubuntu est assez épais. Nous pouvons l'affiner:
: anyy-link { Texte-décoration-épaisseur: 0,08em; }
Remarque: j'utilise :any-link
au lieu de<a></a>
pour cibler uniquement les hyperliens réels (ceux avec des attributs href
). Les styles d'agent utilisateur des navigateurs sont également favorables :any-link
.
Soulignez-vous sur les pièges: un piège subtil
De nombreux sites (comme Google Search et Wikipedia) utilisent des soulignements de survol - les sous-lines apparaissent uniquement sur Mouseover. Bien que généralement déconseillé pour les liens dans le texte, cette approche convient aux liens espacés (navigation, pied de page). Voici un exemple d'en-tête:
En-tête: n'importe quel lien { Décoration du texte: aucune; } En-tête: anyy -kin: Hover { Décoration du texte: soulignement; }
Cependant, la volonté de survol revient à l'épaisseur par défaut, en ignorant notre paramètre précédent text-decoration-thickness
. Pourquoi?
Le problème provient de text-decoration
étant une propriété raccourci, et text-decoration-thickness
de son homologue à la main. La définition text-decoration
à none
ou underline
réinitialise les autres composants de décoration de texte (épaisseur, style, couleur). Le module de décoration de texte CSS le spécifie: les valeurs omises reviennent à leurs états initiaux.
Le navigateur Devtools Confirmez ceci: Inspectez un hyperlien, développez la propriété text-decoration
pour voir les valeurs des composants.
Pour conserver l'épaisseur personnalisée sur le plan de survol, nous avons besoin d'ajustements. Plusieurs solutions existent:
- Raflarez
text-decoration-thickness
dans l'état:hover
. - Incorporez l'épaisseur directement dans le raccourci du
text-decoration
. - Utilisez
text-decoration-line
au lieu detext-decoration
.
Stratégies optimales text-decoration
Répéter simplement text-decoration-thickness
dans le :hover
State fonctionne, mais il est redondant:
/ * Option A * / En-tête: n'importe quel lien { Décoration du texte: aucune; } En-tête: anyy -kin: Hover { Décoration du texte: soulignement; Texte-décoration-épaisseur: 0,08em; }
Idéalement, tirer parti des capacités de sténographie du text-decoration
:
/ * Option b * / En-tête: n'importe quel lien { Décoration du texte: aucune; } En-tête: anyy -kin: Hover { Décoration du texte: souligner 0,08EM; }
Remarque: Cette approche sténographique est relativement nouvelle; Les versions CSS plus anciennes manquaient de cette fonctionnalité. Le moteur WebKit de Safari utilise toujours le case préfixe -webkit-text-decoration
et manque de support d'épaisseur (voir Webkit Bug 230083). Cela rend l'option B safari-incompatible.
La meilleure approche utilise text-decoration-line
, introduite aux côtés de la sténographie:
/ * Option C * / En-tête: n'importe quel lien { Texte-décoration-ligne: aucun; } En-tête: anyy -kin: Hover { Text-décoration-ligne: soulignement; }
Cela modifie uniquement le composant line
, préservant l'épaisseur précédemment définie. Il s'agit de la solution la plus robuste et compatible avec les navigateurs.
Considérations de propriétés scolarisées
N'oubliez pas: les propriétés scolarisées (comme text-decoration
, background
) réinitialisent les valeurs omises à leurs valeurs par défaut. Cela explique pourquoi les styles comme background-repeat: no-repeat
sont remplacés par une déclaration ultérieure background: url(flower.jpg)
. Voir "Réinitialisation accidentelle du CSS" pour plus de détails.
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!

CSS Grid est un outil puissant pour créer des dispositions Web complexes et réactives. Il simplifie la conception, améliore l'accessibilité et offre plus de contrôle que les méthodes plus anciennes.

L'article traite de CSS Flexbox, une méthode de mise en page pour l'alignement et la distribution efficaces de l'espace dans les conceptions réactives. Il explique l'utilisation de Flexbox, la compare à la grille CSS et détaille la prise en charge du navigateur.

L'article traite des techniques de création de sites Web réactifs à l'aide de CSS, y compris des balises de méta de la fenêtre, des grilles flexibles, des médias fluides, des requêtes multimédias et des unités relatives. Il couvre également l'utilisation de la grille CSS et de Flexbox ensemble et recommande le cadre CSS

L'article traite de la propriété CSS-Box-Sizing, qui contrôle comment les dimensions des éléments sont calculées. Il explique des valeurs telles que la boîte de contenu, la boîte de bordure et la boîte de padding, et leur impact sur la conception de la disposition et l'alignement de la forme.

L'article discute de la création d'animations à l'aide de CSS, de propriétés clés et de combinaison avec JavaScript. Le principal problème est la compatibilité du navigateur.

L'article discute de l'utilisation de CSS pour les transformations 3D, les propriétés clés, la compatibilité du navigateur et les considérations de performances pour les projets Web. (Compte de caractère: 159)

L'article discute de l'utilisation des gradients CSS (linéaire, radial, répétant) pour améliorer les visuels du site Web, l'ajout de profondeur, de concentration et d'esthétique moderne.

L'article traite des pseudo-éléments dans CSS, de leur utilisation dans l'amélioration du style HTML et des différences par rapport aux pseudo-classes. Fournit des exemples pratiques.


Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

SublimeText3 version anglaise
Recommandé : version Win, prend en charge les invites de code !

Dreamweaver CS6
Outils de développement Web visuel

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

SublimeText3 Linux nouvelle version
Dernière version de SublimeText3 Linux

ZendStudio 13.5.1 Mac
Puissant environnement de développement intégré PHP
