Material Box

Material Box

WEBデザイン & フリー素材

CSS - 円グラフのアイコン

CSS

HTMLとCSSを使用してシンプルな半円のアイコンを描画する方法のコード例です。


HTMLコードは円グラフのアイコンを描画する要素となる<div>タグのクラス名 "pie-chart-icon" を設定しています。
枠と3つの半円のために<div>タグを設置しています。

<div class="pie-chart-icon">
	<div></div><div></div><div></div><div></div>
</div>

CSSカスタムプロパティで基準値とする図形の横幅「--w」を指定しています。
コード例では4分の1サイズの半円をz-indexで重ねています。

/* 円グラフアイコン */
.pie-chart-icon {
	--w: 300px; /* 基準サイズ */
	position: relative;
	width: var(--w);
	height: var(--w);
}

/* Body */
.pie-chart-icon div:nth-child(1) {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 95%;
	height: 95%;
	border-radius: 50%;
	background-color: #4169e1;
}

/* A */
.pie-chart-icon div:nth-child(2) {
	position: absolute;
	top: 5%;
	left: 5%;
	transform: translate(-50%, -50%);
	border: solid #dc143c;
	border-width: calc(var(--w) * 0.45) calc(var(--w) * 0.45) 0 0;
	border-radius: calc(var(--w) * 0.45) 0 0 0;
	transform-origin: right bottom;
	transform: rotate(90deg);
	z-index: 3;
}

/* B */
.pie-chart-icon div:nth-child(3) {
	position: absolute;
	top: 5%;
	left: 5%;
	transform: translate(-50%, -50%);
	border: solid #ff7f50;
	border-width: calc(var(--w) * 0.45) calc(var(--w) * 0.45) 0 0;
	border-radius: calc(var(--w) * 0.45) 0 0 0;
	transform-origin: right bottom;
	transform: rotate(170deg);
	z-index: 2;
}

/* C */
.pie-chart-icon div:nth-child(4) {
	position: absolute;
	top: 5%;
	left: 5%;
	transform: translate(-50%, -50%);
	border: solid #ffa07a;
	border-width: calc(var(--w) * 0.45) calc(var(--w) * 0.45) 0 0;
	border-radius: calc(var(--w) * 0.45) 0 0 0;
	transform-origin: right bottom;
	transform: rotate(230deg);
}

CSS - 円グラフのアイコン

TitleCSS - 円グラフのアイコン

CategoryCSS

Created

Update

AuthorYousuke.U