Heim > Web-Frontend > CSS-Tutorial > Wie kann ich ein prozentuales Kreisdiagramm nur mit CSS erstellen?

Wie kann ich ein prozentuales Kreisdiagramm nur mit CSS erstellen?

Barbara Streisand
Freigeben: 2024-12-26 14:54:17
Original
803 Leute haben es durchsucht

How Can I Create a Percentage Pie Chart Using Only CSS?

Prozent-Kreisdiagramm nur mit CSS

Das Erstellen statischer, kuchenförmiger Elemente ausschließlich mit CSS erfordert ein Verständnis spezifischer CSS-Eigenschaften.

Element # 2 Erstellung

Um Element Nr. 2 zu erstellen, das einen bestimmten Prozentsatz darstellt, verwenden Sie die CSS-Eigenschaft conic-gradient. Diese Eigenschaft erstellt einen kegelförmigen Farbverlauf, wobei der Scheitelpunkt in der Mitte des übergeordneten Elements positioniert ist. Der Winkel des Kegels wird durch den Prozentwert bestimmt, wobei 100 % einen Vollkreis darstellt.

Prozentwertverwaltung

Um die Form von Element Nr. 2 für unterschiedliche Prozentsätze zu verwalten, verwenden Sie eine Kombination der CSS-Eigenschaften:

  • conic-gradient: Passen Sie den Winkel des Kegels an die an Prozentsatz.
  • Clip-Pfad: Verwenden Sie einen kreisförmigen Clip-Pfad, um den sichtbaren Bereich des konischen Verlaufs zu begrenzen. Dadurch wird sichergestellt, dass die Form sowohl bei kleinen als auch bei großen Prozentsätzen korrekt angezeigt wird.

Animation

Um das Kreisdiagramm zu animieren, verwenden Sie die Animationseigenschaft und definieren Sie einen Ausgangszustand, der den Prozentsatz auf festlegt 0. Durch schrittweises Erhöhen des Prozentwerts füllt sich das Kreisdiagramm schrittweise.

Abgerundete Kanten

Zu Um abgerundete Kanten zu erzielen, verwenden Sie einen radialen Farbverlauf mit zwei Farbstopps. Der erste Stopp bei 98 % erzeugt eine subtile Hervorhebung, während der zweite Stopp bei 100 % #0000 verwendet, um eine scharfe Grenze zu erzeugen. Eine Maske oder -Webkit-Maske wird angewendet, um Teile des Farbverlaufs selektiv auszublenden.

Beispielcode

.pie {
  --p: 20;
  --b: 22px;
  --c: darkred;
  --w: 150px;
  
  width: var(--w);
  aspect-ratio: 1/1;
  position: relative;
  display: inline-grid;
  margin: 5px;
  place-content: center;
  font-size: 25px;
  font-weight: bold;
  font-family: sans-serif;
}

.pie:before {
  content: "";
  position: absolute;
  border-radius: 50%;
  background:
    radial-gradient(farthest-side, var(--c) 98%, #0000) top/var(--b) var(--b) no-repeat,
    conic-gradient(var(--c) calc(var(--p)*1%), #0000 0);
  mask: radial-gradient(farthest-side, #0000 calc(99% - var(--b)), #000 calc(100% - var(--b)));
}

.pie:after {
  inset: calc(50% - var(--b)/2);
  background: var(--c);
  transform: rotate(calc(var(--p)*3.6deg - 90deg)) translate(calc(var(--w)/2 - 50%));
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich ein prozentuales Kreisdiagramm nur mit CSS erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage