Я использую Javascript для установки значения переменных CSS на случайное число каждые полсекунды и отображения данных в виде круговой диаграммы, как показано в this CodePen, что отлично работает в моем браузере рабочего стола , но, похоже, не обновляется на Mobile Safari. Я читал, что SCSS может обеспечить функциональность, но я предпочел бы сохранить решение чисто css и javascript, если это возможно.Переменные CSS не обновляются на Mobile Safari
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");
}
}
Какая версия прошивки? Я довольно уверен, что недавно (9.3+) они добавили поддержку переменных CSS. – Quantastical
Я запускаю 9.3.3, и CodePen не работает на моем телефоне. И переменная работает, но она не будет обновляться, поэтому она отображает только начальное значение. – Lebirava