логотип PurpleSchool
логотип PurpleSchool

Единицы измерения sv, lv, dv в CSS. Полное руководство с примерами

Автор

Дмитрий Нечаев

С развитием веб-технологий и увеличением разнообразия устройств, используемых для доступа к веб-страницам, появляется необходимость в новых инструментах для адаптивного дизайна. Традиционные единицы измерения в CSS, такие как px, em, rem, и проценты, имеют свои ограничения. Недавно в CSS были введены новые единицы измерения, специально предназначенные для работы с размерами окна браузера: sv, lv и dv. В этой статье мы подробно рассмотрим, что они собой представляют, как их использовать и какие преимущества они предлагают.

Основные единицы измерения окна браузера

sv (Small Viewport)

Единицы svw и svh представляют собой 1% ширины (svw) и высоты (svh) маленького вьюпорта (viewport). Эти единицы полезны для адаптации дизайна под малые размеры экранов, такие как мобильные устройства.

Пример:

/* Ширина элемента составляет 50% от ширины маленького вьюпорта */
.element {
    width: 50svw;
}

/* Высота элемента составляет 50% от высоты маленького вьюпорта */
.element {
    height: 50svh;
}

lv (Large Viewport)

Единицы lvw и lvh представляют собой 1% ширины (lvw) и высоты (lvh) большого вьюпорта. Эти единицы полезны для адаптации дизайна под большие экраны, такие как настольные мониторы.

Пример:

/* Ширина элемента составляет 75% от ширины большого вьюпорта */
.element {
    width: 75lvw;
}

/* Высота элемента составляет 75% от высоты большого вьюпорта */
.element {
    height: 75lvh;
}

dv (Dynamic Viewport)

Единицы dvw и dvh представляют собой 1% ширины (dvw) и высоты (dvh) динамического вьюпорта. Эти единицы адаптируются в реальном времени при изменении размеров окна браузера.

Пример:

/* Ширина элемента составляет 100% от ширины динамического вьюпорта */
.element {
    width: 100dvw;
}

/* Высота элемента составляет 100% от высоты динамического вьюпорта */
.element {
    height: 100dvh;
}

Преимущества и использование

Адаптивный дизайн

Единицы sv, lv и dv позволяют создавать более гибкие и адаптивные интерфейсы. Например, можно задавать размеры элементов в зависимости от размера вьюпорта, что особенно полезно при создании дизайна для различных устройств.

Эти единицы измерения обеспечивают лучшую поддержку широкого спектра устройств, от маленьких смартфонов до больших телевизоров, что делает их идеальными для создания универсальных и адаптивных веб-приложений.

Использование новых единиц измерения не требует значительных изменений в коде. Достаточно заменить стандартные единицы на новые (sv, lv, dv) в существующих стилях.

Примеры использования

Рассмотрим несколько примеров использования новых единиц измерения в реальных ситуациях.

Пример 1: Адаптивная сетка

Создание адаптивной сетки, которая изменяется в зависимости от размеров экрана.

.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(10svw, 1fr));
    gap: 2svw;
}

Пример 2: Адаптивный текст

Изменение размера шрифта в зависимости от размеров вьюпорта.

.body-text {
    font-size: 2svw;
}

Пример 3: Полноэкранный фон

Создание элемента, который всегда будет занимать весь экран, независимо от изменений размеров окна.

.fullscreen-background {
    width: 100dvw;
    height: 100dvh;
    background: url('background.jpg') no-repeat center center;
    background-size: cover;
}

Заключение

Единицы измерения sv, lv и dv представляют собой значительный шаг вперед в области адаптивного дизайна. Они предоставляют разработчикам мощные инструменты для создания гибких и адаптивных интерфейсов, которые могут адаптироваться к широкому спектру устройств и размеров экранов. Использование этих единиц измерения упрощает процесс создания адаптивного дизайна и позволяет сосредоточиться на создании качественного пользовательского опыта.

Стрелочка влевоЕдиницы измерения vw, vh, vmin и vmax в CSS. Полное руководство с примерамиrem и em в CSS. Полное руководство с примерамиСтрелочка вправо

Постройте личный план изучения Css до уровня Middle — бесплатно!

Css — часть карты развития Frontend

  • step100+ шагов развития
  • lessons30 бесплатных лекций
  • lessons300 бонусных рублей на счет

Бесплатные лекции

Все гайды по Css

Полное руководство по использованию свойства will-change в CSSПолное руководство по свойству transform-style в CSSУправление точкой опоры трансформаций в CSS с помощью transform-originИспользование функций CSS-трансформации; Полное руководствоПолное руководство по свойству transform-box в CSSУправление элементами с помощью свойства transform в CSSПолное руководство по свойству perspective-origin в CSSПолное руководство по свойству perspective в CSSПолное руководство по свойству backface-visibility в CSS
Универсальный селектор в CSS. Полное руководство с примерамиСелектор по тегу в CSS. Полное руководство с примерамиПеречисление селекторов в CSS. Полное руководство с примерамиСелектор потомка в CSS. Полное руководство с примерамиСелектор по идентификатору в CSS; Полное руководство с примерамиКомбинированные селекторы в CSS; Полное руководство с примерамиСелектор по классу в CSS; Полное руководство с примерамиСелектор по атрибуту в CSS; Полное руководство с примерами
Псевдокласс selection. Полное руководство с примерамиПсевдоэлементы в CSS. Полное руководство с примерамиПсевдоэлемент placeholder в CSS. Полное руководство с примерамиПсевдоэлемент marker в CSS. Полное руководство с примерамиПсевдоэлемент first-line в CSS. Полное руководство с примерамиПсевдоэлемент first-letter в CSS. Полное руководство с примерамиСвойство content в CSS. Полное руководство с примерамиПсевдоэлемент before в CSS. Полное руководство с примерамиПсевдоэлемент backdrop в CSS. Полное руководство с примерамиПсевдоэлемент after в CSS. Полное руководство с примерами
Псевдокласс where в CSS. Полное руководство с примерамиПсевдокласс visited в CSS. Полное руководство с примерамиПсевдоклассы группы type в CSS. Полное руководство с примерамиПсевдокласс target в CSS. Полное руководство с примерамиПсевдокласс root в CSS. Полное руководство с примерамиПсевдокласс required в CSS. Полное руководство с примерамиПсевдоклассы в CSS. Полное руководство с примерамиПсевдокласс placeholder-shown в CSS. Полное руководство с примерамиПсевдокласс optional в CSS. Полное руководство с примерамиПсевдокласс not в CSS. Полное руководство с примерамиПсевдокласс link в CSS. Полное руководство с примерамиПсевдокласс lang в CSS. Полное руководство с примерамиПсевдокласс is в CSS. Полное руководство с примерамиПсевдоклассы invalid и valid в CSS. Полное руководство с примерамиПсевдокласс indeterminate в CSS. Полное руководство с примерамиПсевдоклассы in-range и out-of-range. Полное руководство с примерамиПсевдокласс hover в CSS. Полное руководство с примерамиПсевдокласс has в CSS. Полное руководство с примерамиПсевдокласс focus-within в CSS. Полное руководство с примерамиПсевдокласс focus-visible в CSS. Полное руководство с примерамиПсевдокласс focus в CSS. Полное руководство с примерамиПсевдокласс empty в CSS. Полное руководство с примерамиПсевдоклассы disabled и enabled в CSS. Полное руководство с примерамиПсевдокласс default в CSS. Полное руководство с примерамиПсевдоклассы группы child в CSS. Полное руководство с примерамиПсевдокласс checked в CSS. Полное руководство с примерамиПсевдокласс active в CSS. Полное руководство с примерами
Функция var в CSS. Полное руководство с примерамиФункция url в CSS. Полное руководство с примерамиФункция repeating-radial-gradient в CSS. Полное руководство с примерамиФункция repeating-linear-gradient в CSS. Полное руководство с примерамиФункция repeating-conic-gradient в CSS. Полное руководство с примерамиФункция radial-gradient в CSS. Полное руководство с примерамиФункция min в CSS. Полное руководство с примерамиФункция max в CSS. Полное руководство с примерамиФункция linear-gradient в CSS. Полное руководство с примерамиФункция image-set в CSS. Полное руководство с примерамиФункции фильтров в CSS. Полное руководство с примерамиФункция conic-gradient в CSS. Полное руководство с примерамиФункция clamp в CSS. Полное руководство с примерамиФункция calc в CSS. Полное руководство с примерамиФункция attr в CSS. Полное руководство с примерами
Вендорные префиксы в CSS. Полное руководство с примерамиКонтекст наложения в CSS. Полное руководство с примерамиСпецифичность в CSS. Полное руководство с примерамиПодход «Pixel Perfect» в верстке сайтов. Полное руководство с примерамиНаследование в CSS. Полное руководство с примерамиCSS-правило. Полное руководство с примерамиКомментарии в CSS. Полное руководство с примерамиПринцип каскада в CSS. Полное руководство с примерамиБлочная модель в CSS. Полное руководство с примерамиСвойство all в CSS. Полное руководство с примерамиПодключение стилей к HTML. Полное руководство с примерами
Полное руководство по свойству will-change в CSSПолное руководство по transition-timing-function в CSSОсновы использования transition-property в CSS; управление плавными переходамиCSS transition-duration; Полное руководство по управлению продолжительностью переходовCSS transition-delay; Полное руководство по управлению задержкой переходовCSS transition; Полное руководство по созданию плавных переходовCSS @keyframes; Полное руководство по созданию анимацийCSS animation-timing-function; Полное руководство по управлению проигрыванием анимацийCSS animation-play-state; Полное руководство по управлению анимациямиCSS animation-name; Полное руководство по заданию имени анимацииCSS animation-iteration-count; Полное руководство по управлению количеством повторений анимацииCSS animation-fill-mode; Полное руководство по управлению состоянием элементов после анимацииCSS animation-duration; Полное руководство по управлению длительностью анимацииCSS animation-direction; Полное руководство по управлению направлением анимацииCSS animation-delay; Полное руководство с примерамиCSS-анимации; Полное руководство с примерами
Открыть базу знаний

Лучшие курсы по теме

изображение курса

HTML и CSS

Антон Ларичев
иконка часов6 бесплатных уроков
иконка звёздочки рейтинга4.8
Frontend
Mobile
изображение курса

TypeScript с нуля

Антон Ларичев
иконка часов6 бесплатных уроков
иконка звёздочки рейтинга4.8
Backend
Frontend
Mobile
изображение курса

Next.js - с нуля

Антон Ларичев
иконка часов8 бесплатных уроков
иконка звёздочки рейтинга4.7
Frontend