При разработке крупных проектов или интеграции готовых UI-библиотек часто возникает проблема конфликта имён CSS-классов. Стили одной библиотеки могут неожиданно повлиять на элементы другой, даже если вы старались использовать уникальные имена. Обычно эту проблему решают через CSS Modules или Scoped CSS.
Читать далее »Все записи категории ‘Танцы с CSS’
Квантование ширины: способ балансировать текст в кнопках на CSS
Иногда кнопки на сайте содержат очень разный по длине текст. С коротким текстом всё просто: он помещается в одну строку и выглядит аккуратно. Но как только текст становится длиннее, приходится переносить его на две строки. Проблема в том, что при автоматическом переносе строки получаются неравномерными: в первой может влезть почти вся фраза, а одно слова оказаться во второй строке.
Читать далее »Анимация прокрутки в CSS: animation-timeline: scroll()
Ещё недавно для прогресс-бара чтения на сайте приходилось подключать JavaScript: отслеживать событие scroll, вычислять процент прокрутки и менять ширину элемента. Теперь это можно сделать чисто на CSS, благодаря новой возможности — Scroll-driven animations.
Как работает position: sticky с bottom: 0 и почему он «не работает»
Иногда кажется, что position: sticky работает только с top. Указываешь bottom: 0 — и ничего не происходит. Особенно, если пытаешься сделать так, чтобы элемент «прилип» к нижней границе контейнера при прокрутке. Почему так?
Единицы размеров в CSS, отличия между REM, EM, PX и т.п.
В CSS размеры можно задавать с помощью разных единиц измерения: rem, em, px, % и другие. Разберём ключевые различия между rem, em и прочими.
Анимация нажатия: эффект нажатой кнопки
Когда пользователь нажимает кнопку, полезно дать тактильную обратную связь — например, слегка «прижать» её визуально. Такой эффект достигается с помощью изменения масштаба (scale) и вертикального смещения (translateY).
Это статья из цикла заметок по CSS анимации и эффектам.
Читать далее »Анимация: Поднятие элемента с тенью при наведении
Эта анимация создаёт эффект, будто элемент «приподнимается» над страницей, становясь более заметным. Обычно для этого используется свойство box-shadow, иногда в сочетании с лёгким смещением (transform: translateY(-2px)).
Это статья из цикла заметок по CSS анимации и эффектам.
Читать далее »Анимация свечения (мерцание)
Здесь мы разбираем CSS анимацию — мерцание.
Это статья из цикла заметок по CSS анимации и эффектам.
Читать далее »Простые CSS анимации, которые оживят ваш сайт
Иногда даже одно лёгкое движение может сделать сайт запоминающимся. Не нужно быть мастером фронтенда, чтобы добавить немного магии в интерфейс — иногда достаточно пары строк CSS. Простые анимации делают сайт динамичным, визуально приятным и интуитивно понятным: кнопки становятся отзывчивыми, элементы появляются с грацией, а страницы начинают «дышать».
Читать далее »Как сделать чтобы scss mixin добавлял стили однократно
Иногда требуется, чтобы стили или часть стилей, формируемых миксином, добавлялись однократно.
Читать далее »