Компонент Button используется как триггер для выполнения определенного действия. Основное назначение кнопки – запуск действия. В редких случаях кнопка используется вместо ссылок для перехода на другую страницу.
По внешнему виду компонент Button делится на 4 типа: базовая кнопка, контурная кнопка, плоская кнопка и контрастная кнопка.
Внешний вид кнопки определяется свойством view.
action — наиболее заметный тип кнопки. Используется для выполнения основного действия на экране, требующего максимального внимания.
Рекомендуется использовать не более одной такой кнопки на странице.
normal — тип кнопки по умолчанию. Используется для вторичных действий или когда нужно сохранить важность действия, но не слишком привлекать к нему внимание.
raised — кнопка, располагающаяся поверх контента в виде плавающего элемента; обычно имеет фиксированное положение.
outlined — используется для вторичных действий, требующих меньшего внимания. Может использоваться как с основной кнопкой, так и без нее; при этом, если есть основная кнопка, она должна быть акцентирована.
outlined-action: Обычно используется как ссылка на другую страницу или внешний ресурс.
Этот тип кнопки также имеет дополнительные семантические варианты: outlined-info, outlined-success, outlined-warning и outlined-danger.
flat — используется для вспомогательных действий, требующих наименьшего внимания. Такие элементы часто встречаются в списках кнопок или иконок действий (без текста) в редакторах.
flat-secondary — менее акцентированная версия кнопки flat. Часто используется в качестве вспомогательной кнопки в диалогах и модальных окнах.
flat-action — обычно используется как ссылка на другую страницу или внешний ресурс.
Также имеет дополнительные семантические варианты: outlined-info, outlined-success, outlined-warning и outlined-danger.
Для управления поведением компонента Button внутри контейнера используйте свойство width:
auto — ограничивает максимальную ширину кнопки, скрывая переполняющее содержимое с помощью многоточия.
max — подгоняет ширину кнопки под размер родительского контейнера, также скрывая переполняющее содержимое с помощью многоточия.
Default
Auto
Max
import{Button}from'@gravity-ui/uikit';import{typeCSSProperties}from'react';const containerStyle:CSSProperties={ width:100, border:'2px dashed gray',};const titleStyle:CSSProperties={ textAlign:'center',};exportdefaultfunction(){return(<><divstyle={containerStyle}><h4style={titleStyle}>Default</h4><p><Button>Text</Button></p><p><Button>Very Long Text</Button></p></div><divstyle={containerStyle}><h4style={titleStyle}>Auto</h4><p><Buttonwidth="auto">Text</Button></p><p><Buttonwidth="auto">Very Long Text</Button></p></div><divstyle={containerStyle}><h4style={titleStyle}>Max</h4><p><Buttonwidth="max">Text</Button></p><p><Buttonwidth="max">Very Long Text</Button></p></div></>);}
Свойство pin позволяет настраивать форму начальных и конечных краев элемента и обычно используется для объединения нескольких кнопок в единый блок.
Значение свойства pin включает названия стилей начального и конечного краев, разделенных дефисом, например, round-brick.
Доступные стили краев: round (по умолчанию), circle, brick и clear.