


Appliquer des styles CSS aux graphiques vectoriels évolutifs (SVG)
Jul 10, 2025 am 11:47 AM Pour style SVG avec CSS, vous devez d'abord intégrer le SVG en ligne en HTML pour un contr?le fin. 1. En ligne SVG permet de sélectionner directement ses éléments internes tels que
Les SVG sont partout ces jours-ci - Logos, Ic?nes, Illustrations - et l'un des grands avantages est que vous pouvez les styliser avec CSS tout comme les éléments HTML. Cela les rend flexibles et faciles à intégrer dans la conception Web moderne. Mais si vous avez essayé d'appliquer des styles à SVG et que vous avez rencontré des problèmes, vous n'êtes pas seul. Il y a quelques gotchas à conna?tre.

SVG en ligne vs SVG externe
La fa?on dont vous incluez votre SVG dans une page affecte la fa?on dont vous pouvez le styliser.

- En ligne SVG : Cela signifie coller directement le code
<svg></svg>
réel dans votre HTML. Le grand plus ici est que vous pouvez cibler ses éléments (comme<path></path>
,<circle></circle>
, etc.) directement avec CSS. - SVG externe : Si vous chargez le SVG via une balise
<img src="/static/imghw/default1.png" data-src="https://img.php.cn/upload/article/000/000/000/175211922987577.png" class="lazy" alt="Appliquer des styles CSS aux graphiques vectoriels évolutifs (SVG)" >
ou une image d'arrière-plan dans CSS, vous perdez un accès direct aux éléments internes. Dans ce cas, vous ne pouvez appliquer que des styles globaux comme la largeur, la hauteur ou les filtres de l'extérieur.
Donc, si vous voulez un contr?le à grains fins sur les couleurs, les animations ou les effets de survol à l'intérieur du SVG, allez en ligne.
Styling Elements SVG avec CSS
Une fois que votre SVG est en ligne, vous pouvez traiter bon nombre de ses éléments comme un HTML régulier en ce qui concerne le style.

Par exemple, vous pourriez avoir un logo où vous voulez que la forme principale change de couleur sur le plan de survol:
<SVG> <path class = "logo-main" d = "m10 10 ..." /> </svg>
Et dans votre CSS:
.logo-main { Remplir: # 333; } .logo-main: Hover { Remplir: # 09f; }
Quelques points importants:
- Utilisez
fill
au lieu decolor
oubackground-color
pour les formes et les chemins. - Les contr?les
stroke
contribuent etstroke-width
ajuste leur épaisseur. - Vous pouvez également animer ces propriétés avec des transitions ou des images clés.
Gardez à l'esprit que certains navigateurs plus anciens peuvent avoir un support limité pour certaines fonctionnalités CSS appliquées à SVG.
Utilisation de classes et de styles portée
Comme avec HTML, vous pouvez utiliser des cours à l'intérieur de SVG pour organiser des styles et éviter de vous répéter.
Disons que votre SVG a plusieurs parties:
<SVG> <cercle class = "dot primaire" cx = "50" cy = "50" r = "10" /> <cercle class = "dot secondary" cx = "100" cy = "50" r = "10" /> </svg>
Vous pouvez définir des styles réutilisables dans votre CSS:
.dot { Transition: remplissez 0,3 s facilité; } .primaire { Remplir: rouge; } . Secondaire { Remplir: bleu; }
Quelques conseils:
- Assurez-vous que vos noms de classe ne se heurtent pas à d'autres styles sur la page.
- Pensez à envelopper le SVG dans un récipient et à utiliser des styles de portée si nécessaire.
- Le BEM ou les conventions de dénomination similaires peuvent aider à garder les choses organisées.
Cette approche maintient votre code propre et maintenable, d'autant plus que les SVG deviennent plus complexes.
Attention à la spécificité et à l'héritage
Les éléments SVG peuvent hériter des styles de la page, ce qui est pratique mais parfois déroutant.
Par exemple, si vous définissez une couleur fill
sur l'élément <svg>
lui-même, les éléments enfants sans leur propre fill
le ramassent automatiquement. Qui peut être utile pour le thème:
svg { Remplir: CurrentColor; }
Ensuite, vous pouvez simplement changer la propriété color
ailleurs, et le SVG suit.
Mais cela signifie également que des résultats inattendus peuvent appara?tre si vous ne faites pas attention avec la spécificité du sélecteur ou les règles contradictoires. Une bonne astuce consiste à réinitialiser les styles hérités en cas de besoin:
svg * { Remplir: aucun; TRAP: aucun; }
De cette fa?on, vous commencez à frais et définissez exactement ce que vous voulez.
Fondamentalement, c'est tout. Le style SVG avec CSS est puissant une fois que vous savez comment cela fonctionne, mais il nécessite une attention sur la fa?on dont SVG attribue la carte des propriétés CSS et comment le fichier est inclus dans la page.
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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

ToImplementDarkModeInSseffectively, usecssvariablesforthemeColors, détectystemPreferences withprefers-color-scheme, addamanualtogglebutton et handleimages etbacktergound

Le sujet différemment Betwenem, Rem, PX, andViewportUnits (VH, VW) liesintheirreferencepoint: pxisfixedandbasedonPixelValues, émissrelative EtothefontsizeFheementoritsParent, remisrelelatotherootfontsize, andvh / vwarebasedOnTevietTimensations.1.pxoffersprecicis

CSShoudini est un ensemble d'API qui permettent aux développeurs de manipuler directement et d'étendre le flux de traitement de style du navigateur via JavaScript. 1. Paintworklet contr?le le dessin des éléments; 2. Logique de mise en page personnalisée LayoutWorkLet; 3. AnimationWorkLet implémente l'animation haute performance; 4. PARSER & TYPEDOM exploite efficacement les propriétés CSS; 5. Propriétés et valeurs enregistre les propriétés personnalisées; 6. Fontmetricsapi obtient des informations sur les polices. Il permet aux développeurs d'étendre le CSS de manière sans précédent, d'atteindre des effets tels que les antécédents des vagues et d'avoir de bonnes performances et une bonne flexibilité

ReactivitytransforminVue3aimedtosimplifyhandlingreactivedatabyautomaticallytrackingandmanagingreactivitywithoutrequiringmanualref()or.valueusage.Itsoughttoreduceboilerplateandimprovecodereadabilitybytreatingvariableslikeletandconstasautomaticallyreac

CSSgradentsenhancebackgroundswithdepthandvisualappeal.1.StartWithLineargradientSforsMoothColorTransitionalongaline, spécifiant ladirection et lesColorstops.2.Useradialgradies pour les effets de l'ajustements, les ajustements

Le choix de la valeur d'affichage correcte dans CSS est crucial car il contr?le le comportement des éléments dans la disposition. 1.Inline: faire couler des éléments comme du texte, sans occuper une seule ligne, et ne peut pas définir directement la largeur et la hauteur, adaptées aux éléments de texte, tels que; 2.Block: faire des éléments occuper exclusivement une ligne et occuper toute la largeur, peut définir la largeur et la hauteur et les marges intérieures et extérieures, adaptées aux éléments structurés, tels que; 3.-Block inline: a à la fois des caractéristiques de bloc et une disposition en ligne, peut définir la taille mais s'afficher toujours dans la même ligne, adaptée aux dispositions horizontales qui nécessitent un espacement cohérent; 4.Flex: mode de mise en page moderne, adapté aux conteneurs, facile à obtenir l'alignement et la distribution via la justification-contenu, les éléments d'alignement et d'autres attributs, oui

Internationalisation et olocalisation dans la variation des acquis

Dans Vue, la fourniture et l'injection sont des caractéristiques pour transmettre directement des données sur les composants hiérarchiques. Le composant parent fournit des données ou des méthodes par le biais de composants de fourniture et de descendants directement injecter et utiliser ces données ou méthodes via Inject, sans passer des accessoires Layer par couche; 2. Il convient pour éviter les "propriments", tels que la transmission de données globales ou partagées telles que des sujets, l'état de l'utilisateur, les services d'API, etc.; 3. Remarque Lorsque vous utilisez: les valeurs d'origine non réactives doivent être enveloppées dans des objets réactifs pour réaliser des mises à jour réactives et ne doivent pas être abusés pour éviter d'affecter la maintenabilité.
