Спиннер Spinner

Спиннер — это зацикленный индикатор, не отображающий прогресс выполнения задачи.

В Контуре спиннеры ещё называют «ромашка» или «крутилка».

В библиотеке контролов Контура все спиннеры имеют круговую форму, но спиннер также может быть и горизонтальным, как прогресс-бар.

Например, наш глобальный лоадер работает в режиме спиннера, когда есть проблемы со связью.

Используйте спиннер, чтобы показать, что система выполняет команду, которую дал пользователь. Не применяйте спиннер для заполнения паузы при загрузке контента, для этого предназначен глобальный лоадер.

Если выполнение команды в среднем занимает больше 10 секунд, лучше показывать прогресс-бар.

Если процесс происходит на стороне сервера и можно закрыть окно браузера — сообщите об этом пользователю.

Размер

В библиотеке предусмотрено три размера спиннера:

  • S для встраивания в строку или небольшой контрол.

  • M для показа в модальных окнах и компонентах среднего размера.

  • L для использования в рамках всей страницы.

Размер S используется внутри строки или в контролах соответствующего размера.

Маленький спиннер в строке рядом с текстом «Загружаем»Серая заблокированная кнопка «Загружаем» с маленьким серым спиннером слева от текста

Размер M показывается в модальных окнах для отображения статуса.

Поверх схематичной страницы белая плашка со спиннером среднего размера и подписью «Отправка документа»

Размер L используется как глобальный лоадер, если последний невозможен по техническим причинам.

Схематичная страница с меню и списком слева, в центре пустой контентной области — большой спиннер

Расположение

Не размещайте спиннер непосредственно поверх контента, он начинает «шуметь». Положите его на плашку или установите прозрачность контента на 50 %.

Большой спиннер прямо поверх страницы с финансовыми показателями: дуга перекрывает сумму текущего остаткаТа же страница: большой спиннер на белой плашке с тенью, которая закрывает часть контентаТа же страница с полупрозрачным контентом, поверх него большой спиннер

Не показывайте на странице сразу несколько спиннеров, даже если они иллюстрируют не связанные процессы. Это создаёт неприятное мельтешение и излишне акцентирует внимание пользователя на процессе загрузки. Как правило, есть другой способ показать процесс загрузки.

Если вы используете спиннер как вынужденную замену глобальному лоадеру, покажите его в главном блоке, остальной контент отобразите в виде структурного скелетона.

Схематичная страница с пятью спиннерами: большой в главном блоке и по маленькому в каждой из четырёх серых карточек

Неправильно

Та же страница с одним спиннером в главном блоке, четыре карточки под ним — пустые серые скелетоны

Правильно

Если так сделать не получается, покажите один спиннер на всю страницу, когда загрузятся основные блоки, спиннер можно будет убрать. Остальной контент может появиться позже.

Схематичная страница с меню и списком слева, в центре пустой контентной области — один большой спиннер

В некоторых случаях загружающийся контент можно просто сделать полупрозрачным. Если на странице уже есть спиннер, этого будет достаточно, чтобы показать пользователю, что происходит.

Панель «Готово: 2 из 23 файлов» со спиннером в заголовке: у двух готовых файлов ссылки «Скачать», у каждого из четырёх загружающихся — ещё свой спиннер

Неправильно

Та же панель со спиннером только в заголовке: загружающиеся файлы полупрозрачные, у готовых — ссылки «Скачать»

Правильно

Цвет

Спиннер может быть двух вариантов:

  • Многоцветный — на каждом обороте новый цвет из палитры.
  • Серый — для использования на заблокированных контролах.

Подпись

Не используйте подписи: «Идёт загрузка» и «Пожалуйста, подождите».

Дефолтная подпись к спиннеру: «Загрузка» — старайтесь заменить на более информативную.

Спиннер самой анимацией показывает: что-то происходит и надо подождать. Используйте такой текст, который может добавить новую информацию или детали того, что происходит.

Не используйте страдательный залог. Пишите от первого лица множественного числа или используйте существительное для названия процессов:

  • Неправильно: «Отчёт проверяется».
  • Правильно: «Проверяем отчёт» или «Проверка отчёта».

Не ставьте многоточие в конце, в анимированном спиннере оно лишнее.

Тайминг

Показывайте спиннер, если после вызова команды прошло больше 300 мс. Спиннер не появляется на очень короткие промежутки времени, это приводит к неприятному миганию. Если вы показали спиннер, держите его на экране минимум 1 секунду, за это время анимация сделает полный цикл.