Passer au contenu principal




Todos los elementos de las páginas la toile se definen dentro de una caja rectangular. Sin embargo, eso no significa que tengamos que hacer que todo parezca una caja. Puedes usar el CSS clip-path propriété pour recadrer des parties d'une image ou d'un autre élément, pour créer des effets intéressants.

Dans l'exemple ci-dessus, l'image de la bulle est carrée (Fontaine). Utilisant clip-path et la valeur de forme de base de cercle ()
le ciel supplémentaire autour du globe est découpé en laissant une image circulaire sur la page.

Como la imagen es un relier, puede ver algo más sobre el clip-path propriété. Seule la zone visible de l'image peut être cliquée, car les événements ne sont pas déclenchés dans les parties cachées de l'image.

El recorte se puede aplicar a cualquier elemento HTML, no solo a imágenes. Hay algunas formas diferentes de crear un clip-path, en este Publier los veremos.

Compatibilidad del le navigateur

Outre les valeurs du tableau comme expliqué plus loin dans l'article, les différentes valeurs de clip-path avéré avoir excellent support du navigateur. Para los navigateurs heredados, una alternativa puede ser permitir que el navegador ignore la clip-path propriété et afficher l'image sans recadrage. Si c'est un problème, vous pouvez l'essayer clip-path dans une requête de fonction et offre une mise en page alternative pour les navigateurs non pris en charge.

@supports(clip-path: cercle(45%) {
}

Formes de base

Les clip-path La propriété peut prendre plusieurs valeurs. La valeur utilisée dans l'exemple initial était cercle (). C'est l'une des valeurs de forme de base, qui sont définies dans le
Spécification de forme CSS. Cela signifie que vous pouvez recadrer une zone et utiliser la même valeur pour forme extérieure pour rendre le texte conforme à cette forme.

Notez que les formes CSS ne peuvent être appliquées qu'aux éléments flottants. Les clip-path La propriété ne nécessite pas que l'élément soit flottant.

La liste complète des formes de base est:

encart ()

Les encart () value insère la zone découpée à partir du bord de l'élément et des valeurs peuvent être transmises pour les bords supérieur, droit, inférieur et gauche. ONGLE rayon de la frontière Il peut également être ajouté pour courber les coins de la zone recadrée, en utilisant le rond Mot-clé.

Dans mon exemple, j'ai deux cases avec une classe de .boîte. La première image n'a pas de découpage, la seconde est découpée à l'aide de encart () valeurs.

cercle ()

Comme vous l'avez vu, le cercle () El valor crea un área circular recortada. El primer valor es una longitud o un porcentaje y es el radio del círculo. Un segundo valor opcional le permite establecer el centro del círculo. En el siguiente ejemplo, estoy usando valores de mots-clés para configurar mi círculo recortado en la parte superior derecha. También puede utilizar longitudes o porcentajes.

Attention aux bords plats!

Notez qu'avec toutes ces valeurs, la forme sera découpée par la zone de marge de l'élément. Si vous créez un cercle dans une image et que cette forme s'étendra en dehors de la taille naturelle de l'image, vous obtiendrez un bord plat.

bords plats-2833046
L'image utilisée précédemment a maintenant cercle (50%) appliqué. Puisque l'image n'est pas carrée, nous appuyons sur la zone de marge en haut et en bas et le cercle est rogné.

ellipse ()

Une ellipse est essentiellement un cercle écrasé, elle agit donc de manière très similaire à cercle () mais il accepte un rayon pour x et un rayon pour y, plus la valeur du centre de l'ellipse.

polygone ()

Les polygone () value peut vous aider à créer des formes assez complexes, en définissant autant de points que nécessaire, en définissant les coordonnées de chaque point.

Pour vous aider à créer des polygones et voir ce qui est possible, voir Clippy, ongle clip-path générateur, puis copiez et collez le code dans votre propre projet.

Formes de valeurs en espèces

Les formulaires CSS sont également définis comme des formes de valeurs de rachat. Estos se relacionan con el modelo de cuadro CSS: el cuadro de Contenu, el cuadro de relleno, el cuadro de borde y el cuadro de margen con valores de palabra clave de content-box, bordure-boîte, boîte de rembourragey zone de marge.

Ces valeurs peuvent être utilisées seules ou en conjonction avec une forme de base pour définir le cadre de référence utilisé par la forme. Par exemple, ce qui suit découperait la forme sur le bord du contenu.

.boîte {
clip-path: content-box;
}

Dans cet exemple, le cercle utiliserait le content-box comme un tableau de référence au lieu de zone de marge (qui est la valeur par défaut).

.boîte {
clip-path: cercle(45%) content-box;
}

Actuellement, les navigateurs ne prennent pas en charge l'utilisation de valeurs de boîte pour clip-path propriété. Sont compatibles avec forme extérieure cependant.

Utilisation d'un élément SVG

Pour avoir plus de contrôle sur la zone recadrée que ce n'est possible avec les formes de base, utilisez un SVG clipPath élément. Puis référencez cet identifiant, en utilisant URL () comme la valeur de clip-path.

Animation de la zone recadrée

Les transitions et animations CSS peuvent être appliquées au clip-path pour créer des effets sympas. Dans l'exemple ci-dessous, j'anime un cercle en survolant la transition entre deux cercles avec une valeur de rayon différente.

Il existe de nombreuses façons créatives d'utiliser l'animation avec le détourage.
Animation avec clip-path sur CSS Tricks passe par quelques idées.

photo par Matthieu Henry en rafale.