#javascript #css #calc #getcomputedstyle
Вопрос:
вот очень маленький вопрос, на который я не могу легко ответить, и я думаю, что это странно. У меня есть div с правилом вычисления CSS для высоты
@media screen and ( max-device-width: 399px)
{
:root{
--imgItem-width: 30px;
--imgItem-height: 55px;
--imgNav-width: 80px;
--imgNav-height: 35px;
}
.postPlace{
height: calc(var(--imgItem-height) * 2 5px) ;
--gsh : calc( var(--imgItem-height) /2 ) ;
}
Этот div растет по запросам пользователей через jscript. Это работает.
Но это инкрементная версия. Я сохраняю в файле cookie количество времени, в течение которого он должен увеличиваться, и делаю это автоматически.
Затем, когда он вернется, чтобы снова вырасти, и если div уже был расширен, у меня нет начального размера div.
И в этом-то все и дело.
В сценарии я использую стандартное значение 300 пикселей, что слишком много для смартфона и может быть недостаточно для дикого экрана.
.animate({
height:" =300",
}, 1500 );
Поэтому я хотел бы получить реальное правило calc, хранящееся в var, которое я могу прочитать через js (или jq).
Я попробовал getcomputedstyle, но я не получаю вычисленный var, я получаю значение вычисления (в данном случае «—gsh : calc( var(—imgItem-высота) /2)», а не 27 пикселей) ;
У кого-нибудь есть хоть малейшее представление об этой штуке?
Я видел кое-что из scss вокруг, но из-за такой глупой вещи я немного расстроен…
Комментарии:
1.
window.getComputedStyle(document.documentElement, null).getPropertyValue('--imgItem-width'))
должно сработать.2. Спасибо за ответ, но я внес правку в свою цель. Сначала я плохо объясняю. Jquery получает синтаксис, а не результат. И с вашим синтаксисом, window.getComputedStyle(document.documentElement, null).GetPropertyValue(‘—gsh’) Я ничего не понимаю.
3. Конечно , не при чтении
--gsh
, вместоdocument.documentElement
(=root:
) вы извлекаете значение свойства из элемента, которому вы присвоилиpostPlace
класс.4. неважно, я не мог заставить его работать. Я упростил все (иногда это лучше всего делать), чтобы обеспечить простой расчет на java, извлекая только один статический параметр из css.