Skip to content

Commit

Permalink
Add hover perspective
Browse files Browse the repository at this point in the history
  • Loading branch information
Chalarangelo committed May 17, 2021
1 parent 4e59299 commit 887cd46
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions snippets/hover-pespective.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
---
title: Perspective transform on hover
tags: animation,intermediate
---

Applies a perspective transform with a hover animation to an element.

- Use `transform` with the `perspective()` and `rotateY()` functions to create a perspective for the element.
- Use a `transition` to update the `transform` attribute's value on hover.
- Change the `rotateY()` value to negative to mirror the perspective effect from left to right.

```html
<div class="card-container">
<div class="image-card perspective-left"></div>
<div class="image-card perspective-right"></div>
</div>
```

```css
.image-card {
display: inline-block;
box-sizing: border-box;
margin: 1rem;
width: 240px;
height: 320px;
padding: 8px;
border-radius: 1rem;
background: url("https://picsum.photos/id/1049/240/320");
box-shadow: rgba(0, 0, 0, 0.25) 0px 25px 50px -12px;
}

.perspective-left {
transform: perspective(1500px) rotateY(15deg);
transition: transform 1s ease 0s;
}

.perspective-left:hover {
transform: perspective(3000px) rotateY(5deg);
}

.perspective-right {
transform: perspective(1500px) rotateY(-15deg);
transition: transform 1s ease 0s;
}

.perspective-right:hover {
transform: perspective(3000px) rotateY(-5deg);
}
```

0 comments on commit 887cd46

Please sign in to comment.