Maison > interface Web > tutoriel CSS > Comment puis-je créer des secteurs circulaires en utilisant uniquement des dégradés CSS ?

Comment puis-je créer des secteurs circulaires en utilisant uniquement des dégradés CSS ?

Mary-Kate Olsen
Libérer: 2024-11-30 22:09:12
original
537 Les gens l'ont consulté

How Can I Create Circular Sectors Using Only CSS Gradients?

Dessiner un secteur de cercle avec CSS

Bien que dessiner un cercle complet avec CSS soit simple, créer un secteur circulaire peut être plus difficile. Cependant, en utilisant plusieurs dégradés d'arrière-plan, il est possible d'y parvenir sans recourir à JavaScript.

Utiliser des dégradés pour dessiner le secteur

Au lieu de représenter le secteur avec un vert zone, vous pouvez créer un effet inverse en dessinant les parties blanches ou transparentes. Cela se fait en utilisant deux dégradés linéaires :

  • Le premier dégradé couvre l'angle du secteur et passe du transparent au blanc au milieu.
  • Le deuxième dégradé commence à un angle perpendiculaire et transitions du blanc au transparent au milieu.

Par exemple, pour dessiner un 10 % secteur :

.ten {
    background-image:
        linear-gradient(126deg, transparent 50%, white 50%),
        linear-gradient(90deg, white 50%, transparent 50%);
}
Copier après la connexion

L'angle spécifié dans le premier gradient (126deg) est calculé comme 90 (360 * pourcentage).

Exemple :

<pie class="ten"></pie>
<pie class="twentyfive"></pie>
<pie class="fifty"></pie>
<pie class="seventyfive"></pie>
<pie class="onehundred"></pie>
Copier après la connexion
pie {
    border-radius: 50%;
    background-color: green;
    width: 5em;
    height: 5em;
    float: left;
    margin: 1em;
    border: 2px solid green;
}

.ten {
    background-image: linear-gradient(126deg, transparent 50%, white 50%), linear-gradient(90deg, white 50%, transparent 50%);
}

.twentyfive {
    background-image: linear-gradient(180deg, transparent 50%, white 50%), linear-gradient(90deg, white 50%, transparent 50%);
}

.fifty {
    background-image: linear-gradient(90deg, white 50%, transparent 50%);
}

.seventyfive {
    background-image: linear-gradient(180deg, transparent 50%, green 50%), linear-gradient(90deg, white 50%, transparent 50%);
}

.onehundred {
    background-image: none;
}
Copier après la connexion

Cette technique permet la création de secteurs circulaires avec des angles variables, offrant un moyen polyvalent de représenter des pourcentages ou d'autres valeurs de données en utilisant CSS.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal