Table des matières
Animation clip-chemin: Jouez avec l'animation de déformation de la forme CSS
clip-path crash
Combiné avec l'animation de transition CSS
Comparaison de forme simple
Circulaire
Ovale
En ligne
Polygones
Maison interface Web tutoriel CSS Animer avec clip-chemin

Animer avec clip-chemin

Apr 19, 2025 am 09:52 AM

Animation clip-chemin: Jouez avec l'animation de déformation de la forme CSS

clip-path est un outil puissant dans les propriétés CSS, mais est souvent négligé. Il doit faire face à la géométrie et aux différentes valeurs, donc il ressemble un peu à un cours de mathématiques. Cet article explorera le clip-path détaillé, en particulier comment l'utiliser pour créer des effets d'animation complexes qui montrent la puissance de sa transformation de forme.

Animer avec clip-chemin

clip-path crash

La description de MDN de clip-path est la suivante:

clip-path crée une zone de clip qui définit quelle partie de l'élément doit être affichée. Les pièces à l'intérieur de la zone sont affichées et les pièces à l'extérieur de la zone sont cachées.

Prenant le cercle fourni par clip-path à titre d'exemple, après avoir défini le cercle, la zone intérieure du cercle est "l'espace positif" et la zone extérieure du cercle est "l'espace négatif". L'espace positif est rendu, l'espace négatif est caché. L'animation des relations spatiales positives et négatives apporte des effets de transition intéressants.

clip-path est livré avec quatre formes et peut utiliser l'URL pour lier les SVG externes<clippath></clippath> élément. Voici des exemples des quatre premières formes:

forme Exemple résultat
Circulaire clip-path: circle(25% at 25% 25%);
Ovale clip-path: ellipse(25% 50% at 25% 50%);
En ligne clip-path: inset(10% 20% 30% 40% round 25%);
Polygones clip-path: polygon(50% 25%, 75% 75%, 25% 75%);

Combiné avec l'animation de transition CSS

clip-path peut être utilisée pour modifier les valeurs d'attribut pour réaliser la conversion entre les formes via la transition CSS, et la méthode de déclenchement peut être une commutation de classe ou des changements d'état interactifs dans JavaScript (par exemple :hover ).

 .boîte {
  Clip Path: Circle (75%);
  Transition: Clip Path 1s;
}

.box: Hover {
  Clip Path: Circle (25%);
}
Copier après la connexion

Les animations CSS peuvent également être utilisées:

 @KeyFrames Circle {
  0% {Clip Path: Circle (75%); }
  100% {Clip Path: Circle (25%); }
}
Copier après la connexion

Les points suivants devraient être prêts à l'attention de l'animation clip-path :

  • Il n'affecte que le contenu rendu et ne modifie pas la taille de la boîte de l'élément. Par exemple, une boîte flottante et son texte environnant, même si un petit clip-path est appliqué, l'espace qu'il occupe reste inchangé.
  • Tous les attributs CSS qui dépassent la taille de la boîte d'élément peuvent être coupés. Par exemple, inset avec les 0% dans les quatre directions supprimera box-shadow et devra utiliser un pourcentage négatif pour voir l'ombre. Mais cela peut également produire des visuels intéressants en soi!

Ensuite, regardons quelques exemples d'animation simples.

Comparaison de forme simple

L'exemple suivant montre les effets d'animation de chaque forme et sa description. L'exemple utilise Vue.js, mais la partie CSS est facile à transférer vers d'autres projets.

Circulaire

 Clip Path: cercle (<length> à<position> ));</position></length>
Copier après la connexion

Les cercles acceptent deux propriétés animées:

  1. Rayon de forme: peut être la longueur ou le pourcentage
  2. Position: peut être la longueur ou le pourcentage de l'axe X et de l'axe y
 .Circle-enter-active {Animation: 1s Circle Reverse; }
.Circle-leave-activ {Animation: 1s Circle; }

@KeyFrames Circle {
  0% {Clip Path: Circle (75%); }
  100% {clip-path: cercle (0%); }
}
Copier après la connexion

Ovale

 Clip Path: Ellipse (<length> {2} à<position> ));</position></length>
Copier après la connexion

L'Ovale accepte trois propriétés animées:

  1. Rayon horizontal: peut être la longueur ou le pourcentage
  2. Rayon vertical: peut être la longueur ou le pourcentage
  3. Position: peut être la longueur ou le pourcentage de l'axe X et de l'axe y
 .Ellipse-enter-active {Animation: 1s ellipse inverse; }
.ellipse-leave-active {animation: 1s ellipse; }

@keyframes ellipse {
  0% {Clip Path: Ellipse (80% 80%); }
  100% {Clip Path: Ellipse (0% 20%); }
}
Copier après la connexion

En ligne

 Clip Path: encadré (<length> {1,4} Round<border-radius> {1,4});</border-radius></length>
Copier après la connexion

Il y a jusqu'à cinq propriétés animées pour les formes intégrées. Les quatre premiers représentent chaque bord de la forme, similaire aux marges ou au rembourrage. La première propriété est requise et les trois autres sont facultatifs, selon la forme souhaitée.

  1. Longueur / pourcentage: peut représenter les quatre côtés, les deux côtés ou le bord supérieur
  2. Longueur / pourcentage: peut représenter les côtés gauche et droit ou les côtés droits
  3. Longueur / pourcentage: indique ce qui suit
  4. Longueur / pourcentage: indique le côté gauche
  5. Corners ronds: besoin d'utiliser le mot-clé "rond" avant la valeur

Il convient de noter que l'utilisation des valeurs est l'opposé de l'utilisation typique du CSS. Définir un bord comme zéro signifie qu'il n'y a pas de changement et la forme est poussée vers le bord de l'élément. À mesure que la valeur augmente (par exemple à 10%), les bords de la forme poussent vers l'intérieur vers les bords de l'élément.

 .inset-enter-active {animation: 1s inset inverse; }
.inset-leave-activ {animation: 1s inset; }

@keyframes inset {
  0% {Clip-path: inset (0% rond 0%); }
  100% {Clip Path: encadré (50% tour 50%); }
}
Copier après la connexion

Polygones

 Path de clip: polygone (<length> ));</length>
Copier après la connexion

Les formes de polygone sont spéciales dans les propriétés animées. Chaque attribut représente un sommet d'une forme, nécessitant au moins trois. Le nombre de plus de trois sommets n'est limité que par la forme souhaitée. Pour chaque image clé ou deux étapes de l'animation, le numéro de sommet doit toujours correspondre pour réaliser une animation fluide. Les changements dans le nombre de sommets peuvent être animés, mais provoqueront des effets pop-up à chaque image clé.

 .Polygon-enter-active {Animation: 1s Polygon Reverse; }
.Polygon-leave-active {animation: 1s polygon; }

@KeyFrames Polygon {
  0% {Clip Path: polygone (0 0, 50% 0, 100% 0, 100% 50%, 100% 100%, 50% 100%, 0 100%, 0 50%); }
  100% {Clip Path: polygone (50% 50%, 50% 25%, 50% 50%, 75% 50%, 50% 50%, 50% 75%, 50% 50%, 25% 50%); }
}
Copier après la connexion

... (Le contenu restant est omis car la longueur de l'article est trop longue, mais la structure du texte d'origine et le format d'image sont maintenus. Veuillez ajouter la pseudo-originalité de la partie restante au besoin.)

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 de ce site Web
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

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

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Sujets chauds

Tutoriel Java
1663
14
Tutoriel PHP
1263
29
Tutoriel C#
1236
24
Fontes variables de polices Google Fontes variables de polices Google Apr 09, 2025 am 10:42 AM

Je vois que Google Fonts a déployé un nouveau design (tweet). Comparé à la dernière grande refonte, cela semble beaucoup plus itératif. Je peux à peine faire la différence

Comment créer un compte à rebours animé avec HTML, CSS et JavaScript Comment créer un compte à rebours animé avec HTML, CSS et JavaScript Apr 11, 2025 am 11:29 AM

Avez-vous déjà eu besoin d'un compte à rebours sur un projet? Pour quelque chose comme ça, il pourrait être naturel d'atteindre un plugin, mais c'est en fait beaucoup plus

Guide des attributs de données HTML Guide des attributs de données HTML Apr 11, 2025 am 11:50 AM

Tout ce que vous avez toujours voulu savoir sur les attributs de données dans HTML, CSS et JavaScript.

Une preuve de concept pour rendre Sass plus rapidement Une preuve de concept pour rendre Sass plus rapidement Apr 16, 2025 am 10:38 AM

Au début d'un nouveau projet, la compilation SASS se produit en un clin d'œil. Cela se sent bien, surtout quand il est associé à BrowSersync, qui recharge

Comment nous avons créé un site statique qui génère des modèles tartan dans SVG Comment nous avons créé un site statique qui génère des modèles tartan dans SVG Apr 09, 2025 am 11:29 AM

Le tartan est un chiffon à motifs qui est généralement associé à l'Écosse, en particulier leurs kilts à la mode. Sur tartanify.com, nous avons rassemblé plus de 5 000 tartan

Comment construire des composants Vue dans un thème WordPress Comment construire des composants Vue dans un thème WordPress Apr 11, 2025 am 11:03 AM

La directive en ligne en ligne nous permet de construire des composants Vue riches en tant qu'amélioration progressive par rapport au balisage WordPress existant.

PHP est A-OK pour les modèles PHP est A-OK pour les modèles Apr 11, 2025 am 11:04 AM

Les modèles PHP obtiennent souvent un mauvais rap pour faciliter le code inférieur - mais cela ne doit pas être le cas. Voyons comment les projets PHP peuvent appliquer un base

Programmation sass pour créer des combinaisons de couleurs accessibles Programmation sass pour créer des combinaisons de couleurs accessibles Apr 09, 2025 am 11:30 AM

Nous cherchons toujours à rendre le Web plus accessible. Le contraste des couleurs est juste des mathématiques, donc Sass peut aider à couvrir les cas de bord que les concepteurs auraient pu manquer.

See all articles