Компонент Классы видимости

Используйте адаптивные классы видимости для отображения или скрытия элементов на разных устройствах. Отображение только при наведении или фокусе. Скрытие элементов на сенсорных устройствах.

Visibility: Руководство

Использование компонента Visibility

Добавьте один из этих классов, чтобы скрыть элемент.

Класс Описание
.uk-hidden Скрывает элемент на любом устройстве.
Рекомендуется использовать атрибут hidden.
.uk-invisible Скрывает элемент, оставляя пространство / место, где он должен быть.
.uk-hidden-visually Визуально скрывает содержимое, оставляя контент для вспомогательных технологий, таких как программы чтения с экрана.
<div hidden></div>

<div class="uk-invisible"></div>

Адаптивность

Компонент Visibility предоставляет адаптивные классы для скрытия или отображения элементов на разных разрешениях экрана.

Hidden: Скрыть элемент

Добавьте один из классов .uk-hidden-*, чтобы скрыть элемент с экранов, размер которых превышает указанную ширину.

Класс Описание
uk-hidden@s Влияет только на ширину устройства от 640px и более.
uk-hidden@m Влияет только на ширину устройства от 960px и более.
uk-hidden@l Влияет только на ширину устройства от 1200px и более.
uk-hidden@xl Влияет только на ширину устройства от 1600px и более.
<!-- Скрывает на планшетах и более -->
<div class="uk-hidden@m"></div>
Примечание В этом примере зеленые элементы скрыты на экранах, которые превышают определенную точку останова. Измените размер окна вашего браузера, чтобы увидеть эффект.
✔ Small
Small
✔ Medium
Medium
✔ Large
Large
✔ XLarge
XLarge
<div class="uk-grid-small uk-child-width-1-2 uk-child-width-1-4@s uk-text-center" uk-grid>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ Small</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden@s">Small</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ Medium</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden@m">Medium</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ Large</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden@l">Large</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ XLarge</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden@xl">XLarge</div>
        </div>
    </div>
</div>

Visible: Показать элемент

Используйте классы .uk-visible-*, чтобы показать элемент, для экранов размер которых превышает указанную ширину.

Класс Описание
uk-visible@s Влияет только на ширину устройства от 640px и более.
uk-visible@m Влияет только на ширину устройства от 960px и более.
uk-visible@l Влияет только на ширину устройства от 1200px и более.
uk-visible@xl Влияет только на ширину устройства от 1600px и более.
<!-- Видимость на планшетах и более -->
<div class="uk-visible@m"></div>
Примечание В этом примере зеленые элементы отображаются на экранах, которые превышают определенную точку останова. Измените размер окна вашего браузера, чтобы увидеть эффект.
Small
✔ Small
Medium
✔ Medium
Large
✔ Large
XLarge
✔ XLarge
<div class="uk-grid-small uk-child-width-1-2 uk-child-width-1-4@s uk-text-center" uk-grid>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove">Small</div>
            <div class="uk-alert uk-alert-success uk-position-cover uk-margin-remove uk-visible@s">✔ Small</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove">Medium</div>
            <div class="uk-alert uk-alert-success uk-position-cover uk-margin-remove uk-visible@m">✔ Medium</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove">Large</div>
            <div class="uk-alert uk-alert-success uk-position-cover uk-margin-remove uk-visible@l">✔ Large</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove">XLarge</div>
            <div class="uk-alert uk-alert-success uk-position-cover uk-margin-remove uk-visible@xl">✔ XLarge</div>
        </div>
    </div>
</div>

Переключить видимость

Toggle

Чтобы элементы отображались только при наведении или фокусе добавьте класс .uk-visible-toggle к родительскому элементу и один из следующих классов к любым дочерним элементам, которые должны быть скрыты.

Класс Описание
.uk-hidden-hover Элемент удаляется из потока документов (не занимая пространства), когда скрыт.
.uk-invisible-hover Элемент не удаляется из потока документов (оставляет за собой место) при скрытии.

Дочерние элементы будут отображаться, когда на родительский элемент имеется наведение или фокус. Добавьте tabindex="0" к родительскому элементу, чтобы он мог получать фокус с помощью клавиатуры и сенсорных устройств.

Если в скрытом дочернем элементе есть элементы a или button, они уже доступны для навигации с помощью клавиатуры и будут отображать дочерний элемент. Поэтому добавьте tabindex="-1", чтобы родительский элемент все еще мог фокусироваться на сенсорных устройствах.

<div class="uk-visible-toggle" tabindex="0">
    <div class="uk-hidden-hover"></div>
</div>

Hidden, пока нет наведения

Душа моя озарена неземной радостью, как эти чудесные утра.

Invisible, пока нет наведения

Душа моя озарена неземной радостью, как эти чудесные утра.
<div class="uk-child-width-1-2@s" uk-grid>
    <div class="uk-visible-toggle" tabindex="-1">
        <h4>Hidden, пока нет наведения</h4>
        <div uk-grid>
            <div class="uk-width-expand">Душа моя озарена неземной радостью, как эти чудесные утра.</div>
            <div class="uk-width-auto">
                <ul class="uk-hidden-hover uk-iconnav">
                    <li><a href="#" uk-icon="icon: pencil"></a></li>
                    <li><a href="#" uk-icon="icon: copy"></a></li>
                    <li><a href="#" uk-icon="icon: trash"></a></li>
                </ul>
            </div>
        </div>
    </div>
    <div class="uk-visible-toggle" tabindex="-1">
        <h4>Invisible, пока нет наведения</h4>
        <div uk-grid>
            <div class="uk-width-expand">Душа моя озарена неземной радостью, как эти чудесные утра.</div>
            <div class="uk-width-auto">
                <ul class="uk-invisible-hover uk-iconnav">
                    <li><a href="#" uk-icon="icon: pencil"></a></li>
                    <li><a href="#" uk-icon="icon: copy"></a></li>
                    <li><a href="#" uk-icon="icon: trash"></a></li>
                </ul>
            </div>
        </div>
    </div>
</div>

Устройства

Touch

Добавьте класс .uk-hidden-touch для скрытия элементов на сенсорных устройствах и .uk-hidden-notouch для скрытия элементов на устройствах без сенсорного экрана.

<!-- Hidden на сенсорных устройствах -->
<div class="uk-hidden-touch"></div>

<!-- Hidden на устройствах не сенсорных -->
<div class="uk-hidden-notouch"></div>
✔ Hidden Touch
Hidden Touch
✔ Hidden No-Touch
Hidden No-Touch
<div class="uk-grid-small uk-child-width-1-2 uk-child-width-auto@s uk-text-center" uk-grid>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ Hidden Touch</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden-touch">Hidden Touch</div>
        </div>
    </div>
    <div>
        <div class="uk-panel">
            <div class="uk-alert uk-margin-remove uk-alert-success">✔ Hidden No-Touch</div>
            <div class="uk-alert uk-position-cover uk-margin-remove uk-hidden-notouch">Hidden No-Touch</div>
        </div>
    </div>
</div>