CSS min-height — мінімальна висота елемента
Властивість min-height використовується, щоб встановити мінімальну висоту елемента.

Ця властивість не дозволяє значенню властивості height стати меншим за min-height.
Значення висоти елемента буде обчислюватися в залежності від встановлених значень властивостей height, max-height і min-height.
Як браузер розраховує висоту елемента.
| Значенння властивості | Висота | ||||
|---|---|---|---|---|---|
| min-height | < | height | < | max-height | height |
| min-height | > | height | > | max-height | min-height |
| min-height | > | height | < | max-height | min-height |
| min-height | < | height | height | ||
| min-height | > | height | min-height | ||
| min-height | > | max-height | min-height | ||
| min-height | < | max-height | max-height |
Дані з таблиці слід розуміти так. Якщо значення висоти (height) менше за значення min-height, то висота елемента вважається рівною min-height.
Формальний синтаксис
min-height: length | auto | max-content | min-content | fit-content | fill-available
auto
Мінімальна висота за замовчуванням для елементів flex, що забезпечує більше розумного дефолту, ніж 0 для інших макетів.
max-content
Внутрішня бажана висота.
min-content
Внутріщня мінімальна висота.
fill-available
Висота блоку контенту мінус вертикальний margin, border, та padding.
fit-content
Згідно з кодом CSS3, це синонім min-content. CSS3 визначає більш складний алгоритм, але браузер не реалізує його, навіть експериментально.
Ключові слова практично не підтримуються браузерами.
/* <length> value */
min-height: 3.5em;
min-height: 10%;
/* Keyword values */
min-height: max-content;
min-height: min-content;
min-height: fit-content;
min-height: fill-available;
/* Global values */
min-height: inherit;
min-height: initial;
min-height: unset;
автор: Svitlana
Загальний опис
автор: NagarD
- Нотатка
-
Значення властивості
автор: Svitlanamin-heightперевизначає властивостіmax-heightтаheight. - Нотатка
-
Ключові слова впливають на розрахунок ширини й висоти елементу(й не залежать від значення властивості
автор: Svitlanabox-sizing). Це не стосується до значень у одиницях довжини або процентах.
Синтаксис
min-height: length|initial|inherit;
Властивість min-height може отримувати 3 значень:
-
length -
В якості значення
автор: Svitlanalengthприймаються пікселі (px), відсотки (%) і інші одиниці виміру, прийняті в CSS. Від`ємні значення не допускаються. -
initial -
Встановлює цю властивість в значення без задання
автор: Svitlana -
inherit -
Успадкує значення властивості від свого батьківського елемента.
автор: Svitlana
| Значення без задання: | 0 |
|---|---|
| Наслідує: | Ні |
| Анімується: | Так |
| JavaScript синтаксис: | object.style.minHeight="400px" |
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| 1 | 3 | 1.3 | 4 | 12 | 7 |
| Переглядач | ||||
|---|---|---|---|---|
| 4.4 | 18 | 4 | 1 |
Приклади
+ запропонувати свій приклад у пісочниці
Тексту на один рядок, але блок не може бути нижчим за 100 пікселів — рамка показує справжню висоту.
HTML
<p class="min">Короткий текст, а висота — щонайменше 100px.</p>
CSS
p.min {
min-height: 100px;
border: 2px solid #0172ad;
}
Ліворуч height: 80px — вміст вилазить за рамку; праворуч min-height: 80px — порожній блок тримає висоту, а заповнений спокійно росте.
HTML
<div class="row">
<div>
<b>height: 80px</b>
<div class="card h">Текст, якого забагато для вісімдесяти пікселів висоти: рядок, ще рядок, і ще один рядок.</div>
</div>
<div>
<b>min-height: 80px</b>
<div class="card mh">Текст, якого забагато для вісімдесяти пікселів висоти: рядок, ще рядок, і ще один рядок.</div>
</div>
<div>
<b>min-height: 80px</b>
<div class="card mh">Порожньо</div>
</div>
</div>
CSS
body {
font-family: sans-serif;
font-size: 14px;
padding: 16px;
}
b {
font-family: monospace;
font-size: 12px;
color: #666;
}
.row {
display: flex;
gap: 16px;
align-items: flex-start;
}
.card {
width: 160px;
margin-top: 6px;
padding: 8px;
background: #eef;
border: 2px solid #7a86c9;
}
.h {
height: 80px;
}
.mh {
min-height: 80px;
}
Динамічний приклад
HTML
<div class="box">
<p>У цьому прикладі, Ви можете змінювати значення для властивості <strong>min-height</strong>.</p>
<p>Вона встановлює мінімальну висоту для блоку.</p>
<strong>min-height: </strong>
<input type="number" class="input" id="num" value="240" min="0" step="10">px
<strong>;</strong>
</div>
CSS
* {
box-sizing: border-box;
}
body {
font-family: monospace;
font-size: 16px;
line-height: 1.45;
height: 100vh;
}
.box {
background-color: #f7f7f7;
padding: 16px;
border: 8px solid #F74C32;
min-height: 240px;
transition: all .15s ease-in;
}
.input {
margin-bottom: 36px;
width: 75px;
}
#select {
position: relative;
top: -4px;
width: 100px;
}
JS
document.querySelectorAll('.input').forEach((el) => el.addEventListener('change', function () {
var num = document.querySelector('#num').value;
document.querySelectorAll('.box').forEach((n) => n.style.setProperty('min-height', num + 'px'));
}));
Демонстрація роботи властивості
HTML
<div class="info">
<p>За допомогою властивості <code>min-height</code> ми можемо обмежувати мінімальне можливе значення висоти для блоку.</p>
<p>Наприклад, висота цього блоку (сірого кольору) має дорівнювати висоті контенту (жовтого кольору), але за допомогою вище вказаної властивості, ми це можемо змінити (в нашому прикладі для блоку задана мінімальна висота <em>90vh</em>).</p>
</div>
CSS
* {
box-sizing: border-box;
}
body {
font-family: monospace;
font-size: 17px;
}
.info {
padding: 6px 16px;
background-color: #bbb;
min-height: 90vh;
}
.info p {
background-color: gold;
padding: 4px 6px;
}
code {
font-weight: 700;
color: #444;
border-bottom: 2px solid #666;
}
Демонстрація роботи властивості
HTML
<div class="block">
<p class="green">Цей блок займає у висоту не менший за 50 пікселів! </p>
<p>А цей, за 250 пікселів!</p>
</div>
CSS
.block {
background-color: #eee;
padding: 16px;
min-height: 250px;
}
.block > p.green {
height: 50px;
min-height: 50px;
padding: 12px;
background-color: greenyellow;
}
Коментарі
Коментарів ще немає — будьте першим!