--- title: visibility slug: Web/CSS/visibility tags: - CSS - Web - Расположение CSS - Свойства CSS - Шаблон translation_of: Web/CSS/visibility ---
Свойство visibility
скрывает или показывает элемент без изменения разметки документа. Также скрывает строки и столбцы {{HTMLElement("table")}}.
Чтобы скрыть и удалить элемент из разметки, установите свойству {{cssxref("display")}} значение none
, вместо использования visibility
.
/* Значения */ visibility: visible; visibility: hidden; visibility: collapse; /* Глобальные значения */ visibility: inherit; visibility: initial; visibility: unset;
Свойство visibility
указывается в качестве одного из значений ниже.
visible
hidden
visibility:visible
. Элемент не может получить focus (например, при навигации с помощью tabindex).collapse
{{Cssxref("display")}}: none
применённого к столбцу/строке таблицы). Однако, размер других строк и столбцов должен продолжать вычисляться так, словно скрытые строки/столбцы присутствуют. Это создано для быстрого удаления строк/столбцов из таблицы без дополнительного вычисления ширины и высоты частей таблицы.collapse
обрабатывается также, как hidden
Значения видимости изменяются между видим и не видим. Интерполяция будет, если одно из начальных или конечных значений будет видимо или нет. Если одно из значений visible
, интерполируется как дискретный шаг, где значения временной функции от 0
до 1
для visible
и другие значения временной функции (которые происходят только в начале/конце перехода, или как результат функции cubic-bezier()
со значениями вне [0, 1]) ближе к конечной точке.
<p class="visible">Первый параграф виден.</p> <p class="not-visible">Второй параграф не виден.</p> <p class="visible">Третий параграф также виден. Заметь, второй параграф занимает место.</p>
.visible { visibility: visible; } .not-visible { visibility: hidden; }
{{EmbedLiveSample('Базовый_пример')}}
<table> <tr> <td>1.1</td> <td class="collapse">1.2</td> <td>1.3</td> </tr> <tr class="collapse"> <td>2.1</td> <td>2.2</td> <td>2.3</td> </tr> <tr> <td>3.1</td> <td>3.2</td> <td>3.3</td> </tr> </table>
.collapse { visibility: collapse; } table { border: 1px solid red; } td { border: 1px solid gray; }
{{EmbedLiveSample('Пример_с_таблицей')}}
Использование visibility
со значением hidden
на элементе удалит его из дерева доступности. Это приведёт к тому, что элемент и все его дочерние элементы больше не будут показаны в скринридерах.
visibility:collapse
отсутствует или частично не работает в некоторых современных браузерах. Во многих случаях может не корректно работать visibility:hidden
со столбцами и строками.visibility:collapse
может изменить шаблон таблицы, если таблица содержит вложенные таблицы, пока visibility:visible
не указан явно для вложенной таблицы.Specification | Status | Comment |
---|---|---|
{{SpecName('CSS3 Flexbox', '#visibility-collapse', 'visibility')}} | {{Spec2('CSS3 Flexbox')}} | Определяет значение collapse применимым к flex элементам |
{{SpecName('CSS3 Box', '#the-visibility-property', 'visibility')}} | {{Spec2('CSS3 Box')}} | Без изменений |
{{SpecName('CSS3 Transitions', '#animatable-css', 'visibility')}} | {{Spec2('CSS3 Transitions')}} | Определяет visibility как анимируемое. |
{{SpecName('CSS2.1', 'visufx.html#visibility', 'visibility')}} | {{Spec2('CSS2.1')}} | Изначальное определение |
{{cssinfo}}
{{Compat("css.properties.visibility")}}