Логотип Berry CSSBerry CSS 4.2

Модуль design (настройка)

Это модуль отвечает за дизайн кнопок, форм и т.д.

Особенностью этого модуля в том, что он имеет несколько файлов конфигурации.

Соответственно переменные по умолчанию расположены в файлах

Кнопки

Кнопки задаются двумя классами. Первый — .button, который создаёт базовое поведение. Второй — произвольный, формируемый из $buttons. Класс .button-var нужен для формирования произвольных кнопок через css-переменные.

// для .button
$button-padding: .4rem .8rem,
$button-line-height: 1.5,
$button-disabled-bg-color: #C5C7C9,
$button-disabled-text-color: #93999F,

// для .button-var
$button-bg-color: #0d6efd,
$button-text-color: #fff,
$button-hover-bg-color: #025CE2,
$button-hover-text-color: #fff,
$button-radius: 5px,
$button-focus-shadow: rgba(13, 110, 253, .3),
$button-focus-shadow-size: 2px,

// свойства кнопки
$button1: (
    "radius": 5px,
    "bg": #15fd0d,
    "text": #fff,
    "hover-bg": #025CE2,
    "hover-text": #fff,
    "focus-bg": #025CE2,
    "focus-text": #fff,
    "focus-border": solid 1px #97C1FE,
    "focus-shadow": 0 0 0 3px #97C1FE,
),

... и т.д. каждую кнопку

По умолчанию формируются классы .button1, .button2, .button3, .button-outline1 и .button-outline2, которых обычно хватает для большинства задач. Но, если нужно сделать новые классы кнопок, то в файле конфигурации config/_buttons.scss можно вначале создать переменные для кнопок, а потом их использовать в $buttons:

$btn1: (
	свойства кнопки
);

$btn2: (
	свойства кнопки
);
	
@use '../modules/design/default-buttons' with (
	$modules: (
		'buttons': true,
	),
	
	$buttons: (
		"my-button": $btn1, // класс кнопки .my-button
		"button-alert": $btn2, // класс кнопки .button-alert
	),
);

Формы

$placeholder-color: #828282,

$form-input-padding: 4px 6px,
$form-input-border: 1px solid #CED4DA,
$form-input-border-radius: 3px,

$form-input-focus-color: #495057,
$form-input-focus-background: #fff,
$form-input-focus-border-color: #80bdff,
$form-input-focus-shadow: 0 0 0 .2rem hsla(210, 100%, 50%, 0.25),

$form-input-disabled-color: #999,
$form-input-disabled-background: #f5f5f5,
$form-input-disabled-border-color: #ddd,

$form-invalid-shadow: 0 0 0 .2rem hsla(4, 100%, 50%, 0.3),
$form-invalid-border: 1px solid #FFB7B2,