0
我已经接近这个工作,但是在显示彩虹轮的所有12个部分时遇到问题。我意识到这将是非常简单的事情(奥卡姆剃刀)。我遵循这个辉煌的教程:Dig deep into CSS linear gradients,但我正在倒在最后的障碍。CSS线性渐变彩虹轮...没有显示全部12个部分
这里是一个工作Codepen:https://codepen.io/snarf1974/pen/aywZZJ
body { background: white; }
.colorWheel {
position: relative;
margin: 1em auto;
/* border: solid 2em white; */
width: 16em; height: 16em;
border-radius: 50%;
-ms-transform: rotate(45deg);
transform: rotate(45deg);
background:
linear-gradient(30deg, #9bcb61 36.78%, transparent 36.78%),
linear-gradient(60deg, #f6e04e 68.41%, transparent 68.41%),
linear-gradient(-30deg, #f0463e 36.78%, transparent 36.78%) 100% 0,
linear-gradient(-60deg, #f57d42 68.41%, transparent 68.41%) 100% 0,
linear-gradient(-30deg, transparent 36.78%, #f9a260 36.78%) 100% 0,
linear-gradient(30deg, transparent 63.22%, #c14273 36.78%) 100% 100%,
linear-gradient(60deg, transparent 31.59%, #86489b 31.59%) 100% 100%,
linear-gradient(-30deg, #008fca 63.22%, transparent 63.22%) 100% 100%,
linear-gradient(-60deg, #00bced 31.59%, transparent 31.59%) 100% 100%,
linear-gradient(-30deg, transparent 63.22%, #82ba75 63.22%) 0 100%,
linear-gradient(-60deg, transparent 31.59%, #00b8a9 31.59%) 0 100%,
#f4c64d linear-gradient(#00bced, #00bced) 50% 100%;
background-repeat: no-repeat;
background-size: 50% 50%;
}
.colorWheel:after {
position: absolute;
top: 50%; left: 50%;
margin: -7em;
width: 14em; height: 14em;
border-radius: 50%;
background: white;
content: '';
}
.center {
text-align: center;
position: absolute;
top: 22%;
transform: translateY(-50%);
padding: 1.5em;
font-size: 1.4em;
font-color: black;
z-index: 1;
-ms-transform: rotate(315deg);
transform: rotate(315deg);
}
谁能有何启示?
感谢这么多,我想这将是一些简单。我更新了我的codepen和上面的代码。我试图让所有部分相同,使用这个:sin30°/(sqrt(2)* cos15°)= 0.3678因此,色阻的%值是36.78。我也为60deg做了这个,但这些部分仍然不相同。 – snarf1974
任何人都可以告诉我如何拆分在这个彩虹轮的部分平等?我将360/12 = 30分为30度,使用sin30°/(sqrt(2)* cos15°),但看起来并不正确:[https://codepen.io/snarf1974/pen/aywZZJ] – snarf1974
@ snarf1974 - 抱歉,我错过了您的第一条评论。我修改了我的代码。这是'68.41'计算结果。它应该是'63.22',我相信 – Jonathan