Що таке transition в CSS3?
Властивість transition у CSS використовується для створення плавних переходів між станами елемента, коли змінюється його стиль. Це робить інтерфейс більш інтерактивним і покращує користувацький досвід, додаючи анімаційні ефекти до веб-сторінки без використання JavaScript.
- Дозволяє задавати тривалість та час зміни стилів.
- Працює з більшістю CSS-властивостей, включаючи колір, розміри, позиціювання та прозорість.
- Використовується разом із псевдокласами (наприклад, :hover), щоб реагувати на взаємодію користувача.
/* Базовий стиль */
button {
background-color: #3498db;
color: white;
border: none;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
transition: background-color 0.3s ease, transform 0.2s ease;
}
/* Зміна стилю при наведенні */
button:hover {
background-color: #2ecc71;
transform: scale(1.1);
}
У цьому прикладі кнопка змінює колір фону та збільшується при наведенні курсора. Завдяки transition ці зміни відбуваються плавно, а не миттєво, що робить взаємодію більш приємною для користувача.
Параметри властивості transition включають:
- transition-property — визначає, які властивості змінюватимуться (наприклад, color, transform).
- transition-duration — задає тривалість ефекту (у секундах або мілісекундах).
- transition-timing-function — регулює, як відбуватиметься перехід (наприклад, linear, ease, ease-in, ease-out).
- transition-delay — додає затримку перед початком переходу.
Повний скорочений запис:
/* transition: property duration timing-function delay; */
button {
transition: all 0.5s ease-in-out 0.1s;
}
Використання властивості transition допомагає зробити інтерфейс інтуїтивно зрозумілим та візуально привабливим. Додаючи переходи, важливо враховувати продуктивність: анімації на складних елементах можуть уповільнити завантаження сторінки, особливо на мобільних пристроях.