--- title: display slug: Web/CSS/display tags: - CSS - CSS Display - CSS Property - Reference - display - Справка translation_of: Web/CSS/display ---
Свойство display
(CSS) определяет тип отображения (display type) элемента, имеющий два основных свойства, определяющих генерацию боксов — внешний тип отображения определяет расположение бокса в схеме потока (flow layout) и внутренний тип отображения определяет расположение дочерних элементов бокса (бокс - это прямоугольная область, являющаяся изображением элемента).
Некоторые значения свойства display
полностью определены в их индивидуальных спецификациях; смотрите таблицу в конце этого документа со ссылками на все релевантные спецификации. Полный список значений приведён ниже.
/* <display-outside> values */ display: block; display: inline; display: run-in; /* <display-inside> values */ display: flow; display: flow-root; display: table; display: flex; display: grid; display: ruby; /* <display-outside> plus <display-inside> values */ display: block flow; display: inline table; display: flex run-in; /* <display-listitem> values */ display: list-item; display: list-item block; display: list-item inline; display: list-item flow; display: list-item flow-root; display: list-item block flow; display: list-item block flow-root; display: flow list-item block; /* <display-internal> values */ display: table-row-group; display: table-header-group; display: table-footer-group; display: table-row; display: table-cell; display: table-column-group; display: table-column; display: table-caption; display: ruby-base; display: ruby-text; display: ruby-base-container; display: ruby-text-container; /* <display-box> values */ display: contents; display: none; /* <display-legacy> values */ display: inline-block; display: inline-table; display: inline-flex; display: inline-grid; /* Global values */ display: inherit; display: initial; display: unset;
{{CSSInfo}}
Свойство display
задаётся с помощью ключевых слов. Ключевые слова группируются по шести категориям:
table
и ruby,
имеют сложную внутреннюю структуру с несколькими различными ролями, которые могут выполнять их дочерние элементы и потомки. Этот раздел определяет те "внутренние" значения отображения, которые имеют смысл только в рамках этих конкретных методов разметок.display
, для которого требуются отдельные ключевые слова для блокового и строкового уровней одного способа разметки.<display-xul>
{{Non-standard_Inline}}{{Deprecated_Inline(62)}}Спецификация уровня 3 подразумевает два значения для свойства display
— позволяет специфицировать внешний и внутренний тип отображения явно — но это поддерживается браузерами пока недостаточно хорошо.
Методы display-legacy позволяют получать такие же результаты с одиночными значениями ключевых слов и должны поддерживаться разработчиками до тех пор, пока два значения ключевых слов не будут лучше поддерживаться. Например, используя два значения, вы можете задать строковый (inline) flex контейнер следующим образом:
.container { display: inline flex; }
В настоящее время это можно задать с помощью одного значения.
.container { display: inline-flex; }
В разделе {{anch("Syntax")}} содержатся несколько примеров для разных типов значений display
, которые это свойство может принимать.
Кроме того, вы можете найти подробные объяснения способов разметки для определённых значений display
в других статьях на MDN:
display: none;
Если свойство display
принимает значение none
на элементе, то элемент удаляется из дерева доступности. Это приводит к тому, что элемент и все его дочерние элементы больше не будут восприниматься технологиями чтения экрана.
Если вы хотите визуально скрыть элемент, более доступной альтернативой является использование комбинации свойств для визуального удаления изображения с экрана, но это сохраняет его для синтаксического анализа с помощью вспомогательных технологий, таких как считыватели экрана.
display: contents;
Браузеры удаляют любой элемент со свойством display,
имеющим значение contents
из дерева доступности. Это приводит к тому, что элемент (но не его дочерние элементы) больше не будут восприниматься технологиями чтения экрана. Дочерние элементы становятся дочерними элементами элемента следующего уровня в DOM.
Если у элемента {{HTMLElement("table")}} изменить значение свойства display на
block
, grid
или flex, это изменит
его представление в дереве доступности. Это приводит к тому, что таблица не будет объявлена должным образом с помощью технологии чтения экрана.
Спецификация | Статус | Комментарий |
---|---|---|
{{SpecName('CSS3 Display', '#the-display-properties', 'display')}} | {{Spec2('CSS3 Display')}} | Добавлены run-in , flow , flow-root , contents и multi-keyword значения. |
{{SpecName('CSS3 Ruby', '#ruby-display', 'display')}} | {{Spec2('CSS3 Ruby')}} | Добавлены ruby , ruby-base , ruby-text , ruby-base-container и ruby-text-container . |
{{SpecName('CSS3 Grid', '#grid-containers', 'display')}} | {{Spec2('CSS3 Grid')}} | Добавлены значения модели grid бокс. |
{{SpecName('CSS3 Flexbox', '#flex-containers', 'display')}} | {{Spec2('CSS3 Flexbox')}} | Добавлены значения модели flexible бокс. |
{{SpecName('CSS2.1', 'visuren.html#display-prop', 'display')}} | {{Spec2('CSS2.1')}} | Добавлены значения модели table и inline-block. |
{{SpecName('CSS1', '#display', 'display')}} | {{Spec2('CSS1')}} | Начальное определение. Базовые значения: none , block , inline и list-item . |
{{Compat("css.properties.display", 10)}}