«Flip card» — это визуальный эффект веб-карточки, которая переворачивается при наведении или клике, показывая лицевую и обратную стороны с помощью CSS-анимации. Это может быть полезным для создания анимации, показа дополнительной информации или просто для украшения вашего контента.
Пример того, что получится:
Шаг 1: Создайте HTML-структуру
Сначала вам нужно создать HTML-структуру для вашей карточки. Вот пример:
<div class="card">
<div class="card-inner">
<div class="card-front">
<!-- Содержимое лицевой стороны карточки -->
<h3>Озеро Байкал</h3>
</div>
<div class="card-back">
<!-- Содержимое обратной стороны карточки -->
<h3>О Байкале</h3>
<p>
Озеро Байкал является самым глубоким озером в мире, достигая глубины
более 1,6 километров. Оно также содержит около 20% всей пресной воды на
планете.
</p>
<p>
Байкал известен своей удивительной биоразнообразием, включая множество
уникальных видов рыб и других организмов.
</p>
<p>
Это место привлекает туристов со всего мира благодаря своей красоте и
природным чудесам.
</p>
</div>
</div>
</div>
Шаг 2: Определите стили CSS
Теперь определите стили CSS для вашей карточки.
/* Определяем стили для контейнера карточки (card) */
.card {
width: 400px;
height: 400px;
perspective: 1000px;
cursor: pointer;
}
/* Определяем стили для внутреннего контейнера карточки (card-inner) */
.card-inner {
width: 100%;
height: 100%;
transform-style: preserve-3d;
transition: transform 0.5s; /* Эффект переворота */
}
/* Определяем стили для лицевой и обратной сторон карточки (card-front и card-back) */
.card-front,
.card-back {
width: 100%;
height: 100%;
position: absolute;
backface-visibility: hidden;
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
padding: 20px;
}
/* Стили для лицевой стороны карточки */
.card-front {
background-image: url(../images/baikal.png);
background-size: cover;
}
.card-front > h3 {
font-size: 30px;
font-weight: bold;
color: #fff;
}
/* Стили для обратной стороны карточки */
.card-back {
transform: rotateY(180deg); /* Эффект переворота обратной стороны */
background-color: #c3f1ff;
}
.card-back > h3 {
text-align: center;
margin-bottom: 30px;
font-size: 20px;
font-weight: bold;
}
.card-back > p {
margin-bottom: 20px;
}
/* Эффект переворота при наведении курсора на карточку */
.card:hover .card-inner {
transform: rotateY(180deg);
}