Pie charts are circular charts divided into slices to illustrate numerical proportions. Each slice represents a part of a whole — commonly used to visualize data distribution (e.g., market share, budget percentage, survey results).
Even though CSS is not designed primarily for data visualization, you can create pie-chart-like shapes using just CSS — mainly by leveraging borders, clip-path, and conic-gradient.
A pie chart:
Example:
| Category | Percentage |
|---|---|
| A | 40% |
| B | 30% |
| C | 20% |
| D | 10% |
conic-gradient() (Modern & Simple)This is the easiest and most modern way to create a pie chart.
<div class="pie"></div>
<style>
.pie {
width: 200px;
height: 200px;
border-radius: 50%;
background: conic-gradient(
#4caf50 0 40%, /* 40% */ #2196f3 40% 70%,/* next 30% */ #ff9800 70% 90%,/* next 20% */ #f44336 90% 100% /* last 10% */ );
}
</style>
✔️ Best method
✔️ Pure CSS
✔️ Easy to adjust slices
❌ Not supported in very old browsers
clip-pathYou can manually build slices and rotate them.
<div class="chart">
<div class="slice slice1"></div>
<div class="slice slice2"></div>
</div>
<style>
.chart {
width: 200px;
height: 200px;
border-radius: 50%;
position: relative;
overflow: hidden;
}
.slice {
position: absolute;
width: 100%;
height: 100%;
clip-path: polygon(50% 50%, 100% 0, 100% 100%);
}
.slice1 {
background: orange;
transform: rotate(0deg);
}
.slice2 {
background: blue;
transform: rotate(120deg);
}
</style> ✔️ Works without gradients
❌ Hard to calculate angles manually
Uses thick borders to simulate pie slices. Rarely used now but good to know:
<div class="pie"></div>
<style>
.pie {
width: 0;
height: 0;
border: 100px solid;
border-color: #4caf50 #2196f3 transparent transparent;
border-radius: 50%;
}
</style> ✔️ Legacy technique
❌ Limited slices
❌ Hard to customize
| Method | Best Use Case |
|---|---|
conic-gradient() | Real pie charts, dashboards, modern apps |
clip-path | Controlled custom slices, animations |
| Border trick | Learning / old browsers / simple shapes |
| Approach | Ease | Notes |
|---|---|---|
conic-gradient | ⭐⭐⭐⭐⭐ | Best & easiest |
clip-path | ⭐⭐⭐⭐ | More control |
| Border hack | ⭐⭐⭐ | Old method |
Latest tech news and coding tips.
How to Build APIs That Are Easy to Use, Scale, and Maintain Learn on the…
Almost everyone starts learning JavaScript with the wrong expectations. Let's fix them. Download the Codeflare…
Phaser JS is a powerful, open-source HTML5 game development framework used for creating 2D games that…
JavaScript / Node.js Authentication Libraries 1. Passport.js One of the most popular authentication middleware libraries…
Every profession comes with its own set of tools. A carpenter has a toolbox, a…
Every application that stores and manages data relies on a set of basic operations known…