Свойство CSS `height`
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Свойство height CSS задаёт высоту элемента. По умолчанию свойство определяет высоту области содержимого. Однако если для box-sizing задано значение border-box, оно определяет высоту области границы.
Попробуйте
height: 150px;
height: 6em;
height: 75%;
height: auto;
<section class="default-example" id="default-example">
<div class="transition-all" id="example-element">
This is a box where you can change the height.
</div>
</section>
#example-element {
display: flex;
flex-direction: column;
background-color: #5b6dcd;
justify-content: center;
color: white;
}
Свойства min-height и max-height переопределяют height.
Примечание: Как геометрическое свойство, height также применяется к SVG-элементам <svg>, <rect>, <image> и <foreignObject>; при этом auto разрешается в 0, а процентные значения отсчитываются относительно высоты области просмотра SVG для <rect>. Значение свойства CSS height переопределяет любое значение атрибута SVG height, заданное для элемента SVG.
Синтаксис
/* <length> values */ height: 120px; height: 10em; height: 100vh; height: anchor-size(height); height: anchor-size(--my-anchor self-block, 250px); height: clamp(200px, anchor-size(width)); /* <percentage> value */ height: 75%; /* Keyword values */ height: max-content; height: min-content; height: fit-content; height: fit-content(20em); height: auto; height: stretch; /* Global values */ height: inherit; height: initial; height: revert; height: revert-layer; height: unset;
Значения
-
<length> - Задаёт высоту как значение расстояния.
-
<percentage> - Задаёт высоту в процентах от высоты контейнерного блока.
-
auto - Браузер вычислит и выберет высоту для указанного элемента.
-
max-content - Предпочтительная внутренняя высота.
-
min-content - Минимальная внутренняя высота.
-
fit-content - Использует доступное пространство, но не больше, чем max-content, то есть
min(max-content, max(min-content, stretch)). -
fit-content(<length-percentage>) - Использует формулу fit-content, подставляя вместо доступного пространства указанный аргумент, то есть
min(max-content, max(min-content, <length-percentage>)). -
stretch - Задаёт высоту блока полей элемента равной высоте его контейнерного блока. Это значение пытается заполнить блоком полей доступное пространство контейнерного блока, поэтому в некотором смысле ведёт себя подобно
100%, но применяет полученный размер к блоку полей, а не к блоку, размер которого определяется свойством box-sizing.
Доступность
Убедитесь, что элементы, для которых задано height, не обрезаются и/или не перекрывают другое содержимое при увеличении масштаба страницы для повышения размера текста.
- Пояснения MDN к рекомендациям WCAG, рекомендация 1.4
-
[Понимание критерия успеха 1.4.4 W3C: понимание WCAG 2.0](https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-scale.html)
Формальное определение
| Исходное значение | auto |
|---|---|
| Применяется к | ко всем элементам, кроме неперемещаемых строчных элементов, столбцов таблицы и групп столбцов |
| Наследуется | нет |
| Проценты | Процент вычисляется относительно высоты контейнерного блока созданного блока. Если высота контейнерного блока явно не задана (то есть зависит от высоты содержимого), а этот элемент не позиционирован абсолютно, значение вычисляется как <code>auto</code>. Процентная высота корневого элемента отсчитывается относительно начального содержащего блока. |
| Вычисленное значение | процент, <code>auto</code> или абсолютная длина |
| Тип анимации | $1$, <a href="/en-US/docs/Web/CSS/Reference/Values/percentage#interpolation" title="Значения CSS-типа данных <percentage> интерполируются как вещественные числа с плавающей точкой.">процент</a> или calc(); |
Формальный синтаксис
height = auto | <length-percentage [0,∞]> | min-content | max-content | fit-content | fit-content(<length-percentage [0,∞]>) | <calc-size()> | <anchor-size()> <length-percentage> = <length> | <percentage> <calc-size()> = calc-size( <calc-size-basis>, <calc-sum> ) <anchor-size()> = anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? ) <calc-size-basis> = <intrinsic-size-keyword> | <calc-size()> | any | <calc-sum> <calc-sum> = <calc-product> [ [ '+' | '-' ] <calc-product> ]* <anchor-name> = <dashed-ident> <anchor-size> = width | height | block | inline | self-block | self-inline <calc-product> = <calc-value> [ '*' <calc-value> | '/' <number> ]* <calc-value> = <number> | <dimension> | <percentage> | <calc-constant> | ( <calc-sum> ) <calc-constant> = e | pi | infinity | -infinity | NaN
Примеры
Задание высоты в пикселях и процентах
HTML
<div id="taller">I'm 50 pixels tall.</div> <div id="shorter">I'm 25 pixels tall.</div> <div id="parent"> <div id="child">I'm half the height of my parent.</div> </div>
CSS
div {
width: 250px;
margin-bottom: 5px;
border: 2px solid blue;
}
#taller {
height: 50px;
}
#shorter {
height: 25px;
}
#parent {
height: 100px;
}
#child {
height: 50%;
width: 75%;
}
Результат
Растягивание высоты до заполнения контейнерного блока
HTML
<div class="parent"> <div class="child">text</div> </div> <div class="parent"> <div class="child stretch">stretch</div> </div>
CSS
@supports not (height: stretch) {
body::before {
content: "Your browser doesn't support the `stretch` value yet.";
background-color: wheat;
display: block;
text-align: center;
padding: 1rem 0;
}
}
.parent {
height: 150px;
margin: 1rem;
border: solid;
}
.child {
margin: 1rem;
background: #00999999;
}
.stretch {
height: stretch;
}
Результат
Спецификации
| Спецификация |
|---|
| Модуль CSS Box Sizing, уровень 3 # preferred-size-properties |
| Модуль CSS Box Sizing, уровень 3 # sizing-values |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
height |
1 |
12 |
1 |
7 |
1 |
18 |
4 |
10.1 |
1 |
1.0 |
4.4 |
1 |
anchor-size |
125 |
125 |
147 |
111 |
26 |
125 |
147 |
83 |
26 |
27.0 |
125 |
26 |
auto |
1 |
12 |
1 |
15 |
1 |
18 |
4 |
14 |
1 |
1.0 |
4.4 |
1 |
fit-content |
46 |
79 |
94
41
|
33 |
11
9
|
46 |
94
41
|
33 |
11
9
|
5.0 |
46 |
11
9
|
fit-content_function |
Нет |
Нет |
91 |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
max-content |
46 |
79 |
66
3
|
44 |
11 |
46 |
66
4
|
43 |
11 |
5.0 |
46 |
11 |
min-content |
46 |
79 |
66
3
|
44 |
11 |
46 |
66
4
|
43 |
11 |
5.0 |
46 |
11 |
stretch |
138
28
|
138
79
|
146 |
122
15
|
27
9
|
138
28
|
146 |
91
15
|
27
9
|
5.0 |
138
4.4
|
27
9
|
См. также
widthbox-sizing-
min-height,max-height -
block-size,inline-size anchor-size()clamp()minmax()- Атрибут SVG
height - Введение в блочную модель CSS
- Модуль блочной модели CSS
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/height