Плагін форм
@tailwindcss/forms — це 1:1 PHP офіційного плагіна форм. Він задає рекомендований початковий набір стилів для елементів форм — текстових полів, текстових областей, списків, прапорців і перемикачів. Це забезпечує узгоджений базовий вигляд (скидання стандартного вигляду, рамка, внутрішні відступи, кільце фокусу, власна стрілка списку та значки прапорців і перемикачів), який потім можна перевизначити утилітами.
Використання
Завантажте плагін за допомогою @plugin та імпортуйте шар утиліт:
use TailwindPHP\tw;
$css = tw::generate(
'<input class="form-input"><select class="form-select"></select>',
'@plugin "@tailwindcss/forms"; @import "tailwindcss/utilities.css";'
);
Стратегія
Опція strategy визначає, як застосовуються стилі:
| Стратегія | Поведінка |
|---|---|
base |
Стилізує вбудовані елементи форм глобально за допомогою селекторів, як-от [type='text'], textarea і select. |
class |
Стилізує лише явно задані класи form-*, не змінюючи елементи без класів. |
Якщо strategy не вказано, застосовуються обидві стратегії: вбудовані елементи отримують базове скидання стилів, а класи form-* також стають доступними. Вкажіть лише одну стратегію, щоб вимкнути іншу:
@plugin "@tailwindcss/forms" {
strategy: "class";
}
Стратегія класів
За стратегії class (або за замовчуванням) явно застосуйте ці класи до елементів, які потрібно стилізувати:
| Клас | Елемент |
|---|---|
form-input |
Текстові поля вводу |
form-textarea |
<textarea> |
form-select |
<select> |
form-multiselect |
<select multiple> |
form-checkbox |
<input type="checkbox"> |
form-radio |
<input type="radio"> |
$css = tw::generate(
'
<input class="form-input">
<textarea class="form-textarea"></textarea>
<select class="form-select"></select>
<select class="form-multiselect" multiple></select>
<input type="checkbox" class="form-checkbox">
<input type="radio" class="form-radio">
',
'
@plugin "@tailwindcss/forms" {
strategy: "class";
}
@import "tailwindcss/utilities.css";
'
);
Кожен клас скидає вигляд елемента керування та задає рамки, внутрішні відступи й індикатор фокусу; form-select додає фонове зображення шеврона, а form-checkbox/form-radio додають піктограми для позначеного стану. Перевизначте будь-які з цих властивостей звичайними утилітарними класами (наприклад, class="form-input rounded-lg border-gray-300").
Докладніше про директиву @plugin та завантаження див. у розділі Плагіни.