Существует несколько единиц измерения CSS 3, которые называются:
Что такое длина просмотра в процентах?
Из приведенной выше рекомендации кандидата W3:
Длина области просмотра в процентах относится к размеру исходного содержащего блока. Когда высота или ширина исходного содержащего блока изменяется, они масштабируются соответственно.
Этими единицами являются vh
(высота области просмотра), vw
(ширина области просмотра), vmin
(минимальная длина области просмотра) и vmax
(максимальная длина области просмотра).
Как это можно использовать, чтобы разделитель заполнил всю высоту браузера?
Для этого вопроса мы можем использовать vh
: 1vh
равно 1% высоты области просмотра. То есть100vh
равна высоте окна браузера независимо от того, где находится элемент в дереве DOM:
HTML
<div></div>
CSS
div {
height: 100vh;
}
Это буквально все, что нужно. Вот пример использования JSFiddle .
Какие браузеры поддерживают эти новые модули?
В настоящее время это поддерживается во всех современных основных браузерах, кроме Opera Mini. Проверьте Могу ли я использовать ... для дальнейшей поддержки.
Как это можно использовать с несколькими столбцами?
В случае рассматриваемого вопроса с левым и правым делителем, вот пример JSFiddle, показывающий макет с двумя столбцами, включающий оба vh
и vw
.
Чем 100vh
отличается от 100%
?
Возьмите этот макет например:
<body style="height:100%">
<div style="height:200px">
<p style="height:100%; display:block;">Hello, world!</p>
</div>
</body>
p
Тег здесь установлен на 100% высоты, а потому , что она содержит div
имеет высоту 200 пикселей, 100% 200 пикселей становится 200 пикселей, а не 100% от body
высоты. Использование 100vh
вместо означает, что p
тег будет 100% высоты body
независимо от div
высоты. Взгляните на этот сопровождающий JSFiddle, чтобы легко увидеть разницу!