我正在使用Javascript將CSS變量的值設置爲每半秒一個隨機數,並將數據顯示爲餅圖,如this CodePen中所示,在我的桌面瀏覽器上正常工作,但在Mobile Safari上似乎沒有更新。我讀過SCSS可能會提供功能,但我寧願保持解決方案純CSS和JavaScript如果可能的話。未在移動Safari上更新的CSS變量
的CSS:
#CPUPie {
position: relative;
width: 100px;
height: 100px;
border-radius: 50%;
background: yellowgreen;
background-image:
linear-gradient(to right, transparent 50%, #655 0);
color: transparent;
text-align: center;
}
#CPUPie::before {
content: '';
position: absolute;
top: 0; left: 50%;
width: 50%; height: 100%;
border-radius: 0 100% 100% 0/50%;
background-color: inherit;
transform-origin: left;
transform: rotateZ(var(--CPUPiePercent));
background: var(--CPUPieBackground);
}
的Javascript:
var CPUPie = document.createElement("div");
CPUPie.id = "CPUPie";
document.body.appendChild(CPUPie);
setInterval(update, 500);
update();
function update() {
var CPUPiePercent = Math.random();
if (CPUPiePercent > .5 && CPUPiePercent != 1) {
document.documentElement.style.setProperty("--CPUPiePercent", (CPUPiePercent - .5) + "turn");
document.documentElement.style.setProperty("--CPUPieBackground", "#655");
}
else {
document.documentElement.style.setProperty("--CPUPiePercent", CPUPiePercent + "turn");
document.documentElement.style.setProperty("--CPUPieBackground", "yellowgreen");
}
}
哪個版本的iOS?我很確定只有最近(9.3+)他們是否添加了對CSS變量的支持。 – Quantastical
我正在運行9.3.3,並且CodePen無法在我的手機上工作。而變量的作品,但它不會更新,所以它只顯示初始值。 – Lebirava