Вы можете использовать функции 3D-преобразования в CSS3. Это позволит вам получить желаемый эффект. Вы можете создать два <div>
с. Один для передней и другой для задней. Сделайте так, чтобы передняя сторона перекрывала заднюю сторону, используя z-index
, и поместите их в то же положение, используя position: absolute
. Также сделайте их заднюю часть невидимой, установив backface-visibilty: none
. Затем оберните их в <div class="flipper">
и добавьте анимацию к нему.
Заверните флиппер внутрь <div class="container">
.container {
perspective: 1000;
}
Перспектива позволит анимации быть трехмерной (обязательно используйте префиксы поставщиков).
.flipper {
transition: 0.6s;
transform-style: preserve-3d;
position: relative;
}
Флиппер должен иметь относительное положение, потому что два элемента внутри будут перекрывать друг друга и будут иметь абсолютное положение (убедитесь, что добавили префиксы вендора в стиль перехода и стиль перехода).
.container:hover .flipper{
transform: rotateY(180deg);
}
Тогда вы можете просто добавить этот фрагмент кода, чтобы флиппер переворачивался при наведении на его обертку.
Этот видеоурок поможет: http://www.youtube.com/watch?v=6ObIO-SjMZc