Tailwind: персонализация
разбираемся с персональными настройками Tailwind CSS
Порой наступает время, когда Tailwind CSS необходимо персонализировать в соответствии с требованиями проекта. Tailwind CSS является очень гибким продуктом, возможности которого не ограничиваются только настройками по умолчанию, и это позволяет создавать полностью управляемые системы дизайна.
Почему нужно настраивать Tailwind?
По умолчанию Tailwind предоставляет широкий спектр разнообразных классов-утилит, но иногда хочется выйти за рамки “стоковых” настроек. У разработчика есть возможность добавлять собственные цвета, шрифты, значения интервалов и даже контрольные точки - это позволяет рассматривать Tailwind в качестве идеального инструмента для создания собственной дизайн-системы.
Например, у дизайнера может появиться желание использовать в проекте фирменный цвет или пользовательский шрифт. Tailwind позволяет без труда настроить эти параметры в файле конфигурации tailwind.config.js
.
Настройка файла конфигурации Tailwind
После установки Tailwind через npm можно создать файл конфигурации, выполнив команду:
npx tailwindcss init
В результате появится файл tailwind.config.js
, в котором для текущего проекта задаются настройки Tailwind по умолчанию.
Пример:
module.exports = {
theme: {
extend: {
colors: {
brand: '#5A67D8',
},
fontFamily: {
custom: ['Open Sans', 'sans-serif'],
},
},
},
}
Так добавляются:
- пользовательский цвет:
brand
- пользовательское семейство шрифтов
custom
.
Персонализация цветов и интервалов
В соответствии с потребностями проекта Tailwind позволяет определять пользовательские цвета и интервалы. Можно расширить палитру по умолчанию или полностью заменить её.
Пример создания пользовательских цветов:
module.exports = {
theme: {
extend: {
colors: {
primary: '#1E40AF',
secondary: '#A78BFA',
},
},
},
}
Теперь эти цвета применимы для HTML:
<div class="bg-primary text-white">Custom Background</div>
Пример создания пользовательских интервалов:
module.exports = {
theme: {
extend: {
spacing: {
'72': '18rem',
'84': '21rem',
'96': '24rem',
},
},
},
}
Новые значения интервалов используются следующим образом:
<div class="mt-72">Extra Margin</div>
Персонализация контрольных точек
Если адаптивные контрольные точки по умолчанию не соответствуют требованиям проекта, их можно изменить или добавить новые контрольные точки.
Пример:
module.exports = {
theme: {
screens: {
'sm': '640px',
'md': '768px',
'lg': '1024px',
'xl': '1280px',
'2xl': '1536px',
'3xl': '1920px', // Adding a custom breakpoint
},
},
}
После этого можно создавать стили в новой 3xl
контрольной точке.
Удаление неиспользуемого CSS
Tailwind генерирует большое количество стилей, но размер рабочего CSS-файла можно значительно уменьшить, удалив неиспользуемые стили. В Tailwind есть встроенная опция очистки, удаляющая неиспользуемые классы из конечного CSS-файла.
Настройка очистки:
module.exports = {
purge: ['./src/**/*.html', './src/**/*.js'],
}
Теперь в рабочую сборку попадут только те классы CSS, которые используются в файлах HTML и JavaScript, что значительно уменьшает размер конечного файла CSS.
Заключение
Настройка Tailwind CSS позволяет адаптировать фреймворк к требованиям проекта: будь это добавление пользовательских цветов, шрифтов, интервалов или даже контрольных точек. Tailwind дает хорошие возможности для создания уникальной системы дизайна, используя при этом всю мощь полезных классов-утилит.
Спасибо за внимание.