<html>
<body>
<div></div>
</body>
</html>
:root {
--scrollbar-width: calc(100vw - 100%);
}
body, html {
width: 100%;
height: 100%;
margin: 0px;
}
div {
background-image: url(http://i.stack.imgur.com/r5CAq.jpg);
width: var(--scrollbar-width);
height: var(--scrollbar-width);
}
Ширина и высота элемента div относятся к той же пользовательской переменной CSS (- scrollbar-width), но ее ширина и высота в браузере разные. Это почему??
1 ответ
Как уже было сказано в первом комментарии. Расчет выполняется не внутри определения, а внутри свойства.
Это приводит к следующему:
height: var(--scrollbar-width);
равно height: calc(100vw - 100%);
, где 100%
вычисляется относительно высоты элемента. В то время как width: var(--scrollbar-width);
или width: calc(100vw - 100%);
приведет к вычислению, где 100% относительно ширины элемента.
По этой причине даже если вы ссылаетесь на одно и то же настраиваемое свойство, результаты для width и height разные.
Похожие вопросы
Новые вопросы
css
CSS (каскадные таблицы стилей) - это язык таблиц стилей представления, используемый для описания внешнего вида и форматирования документов HTML (язык разметки гипертекста), XML (расширяемый язык разметки) и элементов SVG, включая (но не ограничиваясь) цвета, макет, шрифты, и анимации. Также описывается, как элементы должны отображаться на экране, на бумаге, в речи или на других носителях.