CSS-свойство `max-width`
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
max-width — свойство CSS, задающее максимальную ширину элемента. Оно не позволяет используемому значению свойства width превышать значение, заданное с помощью max-width.
max-width переопределяет width, но min-width переопределяет max-width.
Попробуйте
max-width: 150px;
max-width: 20em;
max-width: 75%;
max-width: 20ch;
<section class="default-example" id="default-example">
<div class="transition-all" id="example-element">
Change the maximum width.
</div>
</section>
#example-element {
display: flex;
flex-direction: column;
background-color: #5b6dcd;
height: 80%;
justify-content: center;
color: white;
}
Синтаксис
/* <length> value */ max-width: 3.5em; max-width: anchor-size(--my-anchor inline, 245px); max-width: calc(anchor-size(width) + 4em); /* <percentage> value */ max-width: 75%; /* Keyword values */ max-width: none; max-width: max-content; max-width: min-content; max-width: fit-content; max-width: fit-content(20em); max-width: stretch; /* Global values */ max-width: inherit; max-width: initial; max-width: revert; max-width: revert-layer; max-width: unset;
Значения
-
<length> - Задаёт
max-widthабсолютным значением. -
<percentage> - Задаёт
max-widthв процентах от ширины содержащего блока. -
none - Размер блока не ограничен.
-
max-content - Внутренний предпочтительный
max-width. -
min-content - Внутренний минимальный
max-width. -
fit-content - Использует доступное пространство, но не больше, чем max-content, то есть
min(max-content, max(min-content, stretch)). -
fit-content(<length-percentage>) - Использует формулу
fit-content, заменяя доступное пространство заданным аргументом, то естьmin(max-content, max(min-content, argument)). -
stretch -
Ограничивает максимальную ширину блока внешних отступов элемента шириной его содержащего блока. Это значение пытается заполнить блоком внешних отступов всё доступное пространство содержащего блока, поэтому в некотором смысле ведёт себя подобно
100%, но применяет итоговый размер к блоку внешних отступов, а не к блоку, размеры которого определяются свойством box-sizing.Примечание: Сведения об используемых браузерами псевдонимах значения
stretchи состоянии его реализации см. в разделе Совместимость с браузерами.
Доступность
Убедитесь, что элементы с заданным max-width не обрезаются и/или не перекрывают другой контент при увеличении масштаба страницы для повышения размера текста.
- Руководство MDN по WCAG: пояснения к критерию 1.4
-
[Понимание критерия успеха 1.4.4 Руководство W3C по WCAG 2.0](https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-scale.html)
Формальное определение
| Начальное значение | none |
|---|---|
| Применяется к | всем элементам, кроме незамещаемых строчных элементов, строк таблиц и групп строк |
| Наследуется | нет |
| Проценты | относительно ширины содержащего блока |
| Вычисленное значение | заданное процентное значение, абсолютная длина или <code>none</code> |
| Тип анимации | $1$, <a href="/en-US/docs/Web/CSS/Reference/Values/percentage#interpolation" title="Значения CSS-типа данных <percentage> интерполируются как действительные числа с плавающей запятой.">процентное значение</a> или calc(); |
Формальный синтаксис
max-width = none | <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
Примеры
Задание максимальной ширины в пикселях
В этом примере ширина «дочернего» элемента будет равна 150 пикселям или ширине «родительского» элемента — в зависимости от того, какая величина меньше.
HTML
<div id="parent">
<div id="child">
Fusce pulvinar vestibulum eros, sed luctus ex lobortis quis.
</div>
</div>
CSS
#parent {
background: lightblue;
width: 300px;
}
#child {
background: gold;
width: 100%;
max-width: 150px;
}
Результат
Спецификации
| Спецификация |
|---|
| Модуль CSS Box Sizing, уровень 3 # значения размеров |
Совместимость с браузерами
| Настольные | Мобильные | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
max-width |
1 |
12 |
1В CSS 2.1 поведениеmax-width для table не определено. Firefox поддерживает применение max-width к элементам table. |
4В CSS 2.1 поведениеmax-width для table не определено. Opera поддерживает применение max-width к элементам table. |
1 |
18 |
4В CSS 2.1 поведениеmax-width для table не определено. Firefox для Android поддерживает применение max-width к элементам table. |
14 |
1 |
1.0 |
4.4 |
1 |
anchor-size |
125 |
125 |
147 |
111 |
26 |
125 |
147 |
83 |
26 |
27.0 |
125 |
26 |
fit-content |
46
25
|
79
79
|
94
3Firefox реализует определения, приведённые в CSS3 Basic Box. Здесь определеноavailable, но не fit-available. Кроме того, определение fit-content проще, чем в CSS3 Sizing. |
44 |
11
7
2
|
46
25
|
94
4Firefox для Android реализует определения, приведённые в CSS3 Basic Box. Здесь определеноavailable, но не fit-available. Кроме того, определение fit-content проще, чем в CSS3 Sizing. |
43 |
11
7
1
|
5.0
1.5
|
46
4.4
|
11
7
1
|
fit-content_function |
Нет |
Нет |
91 |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
Нет |
max-content |
46
22
|
79
79
|
66
3
|
44 |
11
7
2
|
46
25
|
66
4
|
43 |
11
7
1
|
5.0
1.5
|
46
4.4
|
11
7
1
|
min-content |
46
25
|
79
79
|
66
3
|
44 |
11
7
2
|
46
25
|
66
4
|
43 |
11
7
1
|
5.0
1.5
|
46
4.4
|
11
7
1
|
none |
1 |
12 |
1 |
15 |
1 |
18 |
4 |
14 |
1 |
1.0 |
4.4 |
1 |
stretch |
138
22
|
138
79
|
Нет |
122
15
|
27
7
|
138
25
|
Нет |
91
14
|
27
7
|
30.0
1.5
|
138
4.4
|
27
7
|
См. также
min-widthwidthmax-inline-sizemax-block-sizebox-sizing- Руководство «Введение в блочную модель 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/max-width