Table des matières
Key Takeaways
The Basics
Syntax and Usage
Coupage avec geometry-box
Utilisations de clip-path
ajout de l'animation
Prise en charge du navigateur
Conclusion
Questions fréquemment posées (FAQ)
Quelle est la propriété CSS Clip-Path et comment ça marche?
Comment puis-je utiliser la fonction Polygone dans CSS Clip Path?
Puis-je utiliser la propriété CSS Clip-Path pour une conception réactive?
est-il possible d'animer la propriété CSS Clip-path?
Quels navigateurs prennent en charge la propriété CSS Clip-path?
Comment puis-je utiliser la fonction Circle dans CSS Clip Path?
Puis-je utiliser un SVG comme trajet de clip dans CSS?
Quelle est la différence entre Clip et Clip Path dans CSS?
Comment puis-je utiliser la fonction d'encart dans CSS Clip Path?
Puis-je utiliser plusieurs formes dans un seul chemin CSS Clip?
Maison interface Web tutoriel CSS Présentation de la propriété CSS Clip-path

Présentation de la propriété CSS Clip-path

Feb 21, 2025 am 08:29 AM

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CSS Clip-Path: Shaping Web Elements</title>
    <style>
        body {
            font-family: sans-serif;
        }
        .container {
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
        }
        .intro-image {
            width: 500px;
            height: auto;
        }
        .section-title {
            font-size: 1.5em;
            font-weight: bold;
            margin-bottom: 1em;
        }
        .code-example {
            background-color: #f0f0f0;
            padding: 1em;
            border-radius: 5px;
            margin-bottom: 1em;
            overflow-x: auto; /* Add horizontal scroll if needed */
        }
        .code-example pre {
            margin: 0;
        }
        .image-example {
            display: flex;
            justify-content: center;
            align-items: center;
            margin-bottom: 2em;
        }
        .image-example img {
            max-width: 100%;
            height: auto;
        }
        .key-takeaway {
            margin-bottom: 2em;
        }
        .key-takeaway ul {
            list-style-type: disc;
            padding-left: 20px;
        }
        .faq-section {
            margin-top: 3em;
        }
        .faq-section h2 {
            font-size: 1.8em;
            font-weight: bold;
            margin-bottom: 1em;
        }
        .faq-section .faq-item {
            margin-bottom: 1em;
        }
        .faq-section .faq-item h3 {
            font-weight: bold;
            margin-bottom: 0.5em;
        }
    </style>
</head>
<body>
    <div class="container">
        <img src="/static/imghw/default1.png"  data-src="https://img.php.cn/upload/article/000/000/000/174009775169997.jpg"  class="lazy" alt="Introducing the CSS clip-path Property " />
    </div>

    <p>The web's predominantly rectangular layout contrasts with print media's diverse shapes.  This difference stems partly from a lack of suitable tools. This tutorial introduces <code>clip-path</code>, a CSS property offering the design flexibility of print.</p>

    <div class="key-takeaway">
        <h2 id="Key-Takeaways">Key Takeaways</h2>
        <ul>
            <li><code>clip-path</code> masks parts of an element, exceeding the limitations of the deprecated <code>clip</code> property (rectangular clipping only).</li>
            <li>It supports basic shapes, geometry boxes, or SVG <code><clippath></code> URLs for complex shapes and animations.</li>
            <li>Animating <code>clip-path</code> requires matching vertex counts in initial and final shapes for smooth transitions.</li>
            <li>While not universally supported, major modern browsers (Chrome, Safari, Opera) support <code>clip-path</code> (often with prefixes). Firefox support is partial.</li>
        </ul>
    </div>

    <h2 id="The-Basics">The Basics</h2>
    <p>Clipping trims parts of an element, partially or fully hiding it.  The <i>clipping path</i> defines the visible region, whether a simple shape or a complex polygon.  The <i>clipping region</i> is the area within this path.  Anything outside is hidden, including backgrounds, borders, shadows, and events.</p>
    <p>Even with non-rectangular elements, surrounding content flows naturally. For shape-aware content flow, use the <code>shape-outside</code> property (see related SitePoint tutorial).</p>
    <p>Remember: <code>clip-path</code> differs from the limited, deprecated <code>clip</code> property.</p>

    <h2 id="Syntax-and-Usage">Syntax and Usage</h2>
    <p>The syntax is: <code>clip-path: <clip-source> | [<basic-shape> || <geometry-box>] | none</code></p>
    <ul>
        <li><code><clip-source></code>: An SVG <code><clippath></code> URL.</li>
        <li><code><basic-shape></code>: Basic shape functions (CSS Shapes spec).</li>
        <li><code><geometry-box></code>: (Optional) Reference box for <code><basic-shape></code>, or defines the clipping shape itself (e.g., <code>margin-box</code>).</li>
    </ul>

    <div class="code-example">
        <pre class="brush:php;toolbar:false"><code>img {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
        
Copier après la connexion

Cela crée un losange. Les coordonnées du sommet (x, y) sont dans le sens horaire, par rapport à la boîte de l'élément.

Introducing the CSS clip-path Property

Coupage avec geometry-box

<code>.clip-me {
  clip-path: polygon(10% 20%, 20% 30%, 50% 80%) margin-box;
  margin: 10%;
}
        </code>
Copier après la connexion

Ici, margin-box est la référence. Les éléments SVG utilisent fill-box, stroke-box, ou view-box.

Utilisations de clip-path

clip-path Améliore le texte et les images. Les formes complexes sont facilement réalisables.

Introducing the CSS clip-path Property
<code>.p-msg {
  clip-path: polygon(0% 0%, 100% 0%, 100% 75%, 75% 85%, 75% 100%, 50% 80%, 0% 75%);
}
        </code>
Copier après la connexion

Les galeries d'images et les avatars bénéficient de formes non rectangulaires.

<code>.right {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  position: relative;
  top: -352px;
  left: 256px;
}
        </code>
Copier après la connexion

ajout de l'animation

animer clip-path, mais maintiennent des comptes de sommets cohérents pour les transitions en douceur.

<code>@keyframes polygons {
  25% {
    clip-path: polygon(20% 0%, 100% 38%, 70% 90%, 0% 100%);
  }
  50% {
    clip-path: polygon(0 46%, 100% 15%, 55% 74%, 0 100%);
  }
  70% {
    clip-path: polygon(100% 38%, 100% 38%, 66% 100%, 0 53%);
  }
}
        </code>
Copier après la connexion

Prise en charge du navigateur

IE et Edge manquent de soutien. Firefox a un support partiel (url() syntaxe, potentiellement activé via un drapeau). Le chrome, le safari et l'opéra nécessitent des préfixes -webkit-. Vérifiez puis-je utiliser pour les dernières informations.

Conclusion

clip-path offre des possibilités de conception importantes. Des outils comme Clippy et le générateur de chemins de cheminement de CSS Plant simplifient la création de polygones complexes.

Questions fréquemment posées (FAQ)

Quelle est la propriété CSS Clip-Path et comment ça marche?

clip-path coupe les parties d'un élément, définissant une région d'affichage. Il accepte les formes de base, les boîtes de géométrie ou les chemins SVG, permettant des formes et des animations complexes.

Comment puis-je utiliser la fonction Polygone dans CSS Clip Path?

La fonction polygon() utilise (x, y) des paires de coordonnées pour définir les sommets d'un polygone. Par exemple, clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%) crée un diamant.

Puis-je utiliser la propriété CSS Clip-Path pour une conception réactive?

Oui, utilisez des pourcentages dans les paramètres de forme pour la mise à l'échelle avec la taille de l'élément.

est-il possible d'animer la propriété CSS Clip-path?

Oui, en utilisant des images clés et la propriété animation. Gardez le nombre de sommets cohérent pour les transitions en douceur.

Quels navigateurs prennent en charge la propriété CSS Clip-path?

La plupart des navigateurs modernes le prennent en charge (vérifier que je peux utiliser pour les mises à jour).

Comment puis-je utiliser la fonction Circle dans CSS Clip Path?

circle(radius at position) crée un cercle. Par exemple, clip-path: circle(50% at 50% 50%) centre un cercle dans l'élément.

Puis-je utiliser un SVG comme trajet de clip dans CSS?

Oui, en utilisant la fonction url() pour référencer un élément svg <clippath>.

Quelle est la différence entre Clip et Clip Path dans CSS?

clip est obsolète et ne prend en charge que l'écrêtage rectangulaire. clip-path est beaucoup plus polyvalent.

Comment puis-je utiliser la fonction d'encart dans CSS Clip Path?

inset(top right bottom left [round border-radius]) crée un rectangle avec des coins arrondis facultatifs.

Puis-je utiliser plusieurs formes dans un seul chemin CSS Clip?

Oui, en utilisant la fonction path() avec la syntaxe du chemin SVG.

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)

Cartes empilées avec un positionnement collant et une pincée de sass Cartes empilées avec un positionnement collant et une pincée de sass Apr 03, 2025 am 10:30 AM

L'autre jour, j'ai repéré ce morceau particulièrement charmant sur le site Web de Corey Ginnivan où une collection de cartes se cassent les uns sur les autres pendant que vous faites défiler.

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

Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Pourquoi les zones réduites pourpre dans la disposition Flex sont-elles considérées à tort «espace de débordement»? Apr 05, 2025 pm 05:51 PM

Questions sur les zones de slash violet dans les dispositions flexibles Lorsque vous utilisez des dispositions flexibles, vous pouvez rencontrer des phénomènes déroutants, comme dans les outils du développeur (D ...

Comment sélectionner un élément enfant avec l'élément de nom de première classe via CSS? Comment sélectionner un élément enfant avec l'élément de nom de première classe via CSS? Apr 05, 2025 pm 11:24 PM

Lorsque le nombre d'éléments n'est pas fixé, comment sélectionner le premier élément enfant du nom de classe spécifié via CSS. Lors du traitement de la structure HTML, vous rencontrez souvent différents éléments ...

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

See all articles