width

Властивість CSS width (ширина) встановлює ширину елемента. Усталено вона встановлює ширину області вмісту, однак якщо властивість box-sizing має значення border-box, то вказане значення стає шириною відмежованої області.

Спробуйте його в дії

Задане значення width застосовується до області вмісту, поки воно залишається в межах значень, заданих властивостями min-width і max-width.

  • Якщо значення width менше за значення min-width, то min-width відкидає width.
  • Якщо значення width більше за значення max-width, то max-width відкидає width.

[!NOTE] Як геометрична властивість, width також застосовується до елементів SVG <svg>, <rect>, <image> і <foreignObject>, причому auto вирішується як 100% для <svg> і як 0 для інших елементів, а відсоткові значення відносні щодо ширини області перегляду SVG для <rect>. Значення властивості CSS width перемагає значення атрибута SVG width, якщо на елементі SVG такий задано.

Синтаксис

/* Значення <length> */
width: 300px;
width: 25em;
width: anchor-size(--myAnchor inline, 120%);
width: minmax(100px, anchor-size(width));

/* Значення <percentage> */
width: 75%;

/* Значення – ключові слова */
width: max-content;
width: min-content;
width: fit-content;
width: fit-content(20em);
width: auto;
width: stretch;

/* Глобальні значення */
width: inherit;
width: initial;
width: revert;
width: revert-layer;
width: unset;

Значення

<length>

Визначає ширину у вигляді значення відстані.

<percentage>

Визначає ширину у вигляді відсотків від ширини контейнерного блока.

auto (автоматично)

Браузер обчислить та обере ширину для обраного елемента.

max-content (максимальний вміст)

Внутрішньо бажана ширина.

min-content (мінімальний вміст)

Внутрішньо найменша можлива ширина.

fit-content

Використовує доступний простір, але не більше, ніж max-content, тобто min(max-content, max(min-content, stretch)).

fit-content(<a href="/uk/docs/Web/CSS/length-percentage"><code>&lt;length-percentage&gt;</code></a>)

Використовує формулу fit-content щодо доступного простору, заміненого вказаним аргументом, тобто min(max-content, max(min-content, <length-percentage>)).

stretch

Задає ширині рамки зовнішніх відступів елемента ширину його контейнерного блока. Намагається змусити рамку зовнішніх відступів заповнити доступний у контейнерному блоці простір так, щоб це вийшло схоже на 100%, але застосовуючи результівний розмір до рамки зовнішніх відступів, а не рамки, визначеної box-sizing.

[!NOTE] Аби перевірити псевдоніми значення stretch, що використовуються браузерами, та статус реалізації цього значення, дивіться наш розділ Сумісності з браузерами.

Доступність

Слід пересвідчитись, що елементи, для котрих вказана width, не обрізаються і не затуляються іншим вмістом, коли до сторінки застосовується збільшення для укрупнення тексту.

Формальне визначення

Формальний синтаксис

auto | <length> | <percentage> | min-content | max-content | fit-content | fit-content(<length-percentage>)

де
<length-percentage> = <length> | <percentage>

Приклади

Усталена ширина

p.goldie {
  background: gold;
}
<p class="goldie">Спільнота MDN пише справді добру документацію.</p>

Приклад із пікселями та емами

.px_length {
  width: 200px;
  background-color: red;
  color: white;
  border: 1px solid black;
}

.em_length {
  width: 20em;
  background-color: white;
  color: red;
  border: 1px solid black;
}
<div class="px_length">Ширина, вказана у px</div>
<div class="em_length">Ширина, вказана у em</div>

Приклад із відсотками

.percent {
  width: 20%;
  background-color: silver;
  border: 1px solid red;
}
<div class="percent">Ширина у відсотках</div>

Приклад із max-content

p.max-green {
  background: lightgreen;
  width: max-content;
}
<p class="max-green">Спільнота MDN пише справді добру документацію.</p>

Приклад із min-content

p.min-blue {
  background: lightblue;
  width: min-content;
}
<p class="min-blue">Спільнота MDN пише справді добру документацію.</p>

Специфікації

Сумісність із браузерами

desktop mobile
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari on iOS Samsung Internet
width
Chrome Full support 1
Edge Full support 12
Firefox Full support 1
Internet Explorer Full support 4
Opera Full support 3.5
Safari Full support 1
WebView Android Full support 1
Chrome Android Full support 18
Firefox for Android Full support 4
Opera Android Full support 10.1
Safari on iOS Full support 1
Samsung Internet Full support 1.0
Animatable
Chrome Full support 26
Edge Full support 12
Firefox Full support 16
Internet Explorer Full support 11
Opera Full support 15
Safari Full support 7
WebView Android Full support 4.4
Chrome Android Full support 26
Firefox for Android Full support 16
Opera Android Full support 14
Safari on iOS Full support 7
Samsung Internet Full support 1.5
fill
Нестандартне
Chrome Full support 46
Edge Full support 79
Firefox No support Ні
Internet Explorer No support Ні
Opera Full support 33
Safari Full support 12
WebView Android Full support 46
Chrome Android Full support 46
Firefox for Android No support Ні
Opera Android Full support 33
Safari on iOS Full support 12
Samsung Internet Full support 5.0
fit-content
Chrome Full support 46
Edge Full support 79
Firefox Full support 3
prefix
Internet Explorer No support Ні
Opera Full support 33
Safari Full support 11
WebView Android Full support 46
Chrome Android Full support 46
Firefox for Android Full support 4
prefix
Opera Android Full support 33
Safari on iOS Full support 11
Samsung Internet Full support 5.0
fit-content()
Експериментальне
Chrome No support Ні
Edge No support Ні
Firefox Full support 91
disabled
Internet Explorer No support Ні
Opera No support Ні
Safari No support Ні
WebView Android No support Ні
Chrome Android No support Ні
Firefox for Android No support Ні
Opera Android No support Ні
Safari on iOS No support Ні
Samsung Internet No support Ні
max-content
Chrome Full support 46
Edge Full support 79
Firefox Full support 66
Internet Explorer No support Ні
Opera Full support 44
Safari Full support 11
WebView Android Full support 46
Chrome Android Full support 46
Firefox for Android Full support 66
Opera Android Full support 43
Safari on iOS Full support 11
Samsung Internet Full support 5.0
min-content
Chrome Full support 46
Edge Full support 79
Firefox Full support 66
Internet Explorer No support Ні
Opera Full support 33
Safari Full support 11
WebView Android Full support 46
Chrome Android Full support 46
Firefox for Android Full support 66
Opera Android Full support 33
Safari on iOS Full support 11
Samsung Internet Full support 5.0
stretch
Експериментальне
Chrome Full support 22
altname
Edge Full support 79
altname
Firefox Full support 3
altname
Internet Explorer No support Ні
Opera Full support 15
altname
Safari Full support 7
altname
WebView Android Full support 4.4
altname
Chrome Android Full support 25
altname
Firefox for Android Full support 4
altname
Opera Android Full support 14
altname
Safari on iOS Full support 7
altname
Samsung Internet Full support 5.0
altname

Дивіться також