본문 바로가기
CSS

CSS - 마우스 오버 효과

by 코딩 냠냠 2022. 9. 20.
728x90
반응형

마우스 hover Effect

마우스 오버 했을때 위아래, 좌우로 변화하는 이펙트를 만들어 봅시다.


CSS

@font-face {
    font-family: 'LocusSangsang';
    font-weight: normal;
    font-style: normal;
    src: url('https://cdn.jsdelivr.net/gh/webfontworld/locus/LocusSangsang.eot');
    src: url('https://cdn.jsdelivr.net/gh/webfontworld/locus/LocusSangsang.eot?#iefix') format('embedded-opentype'),
            url('https://cdn.jsdelivr.net/gh/webfontworld/locus/LocusSangsang.woff2') format('woff2'),
            url('https://cdn.jsdelivr.net/gh/webfontworld/locus/LocusSangsang.woff') format('woff'),
            url('https://cdn.jsdelivr.net/gh/webfontworld/locus/LocusSangsang.ttf') format("truetype");
    font-display: swap;
}
* {
    padding: 0;
    margin: 0;
}
body {
    font-family: 'LocusSangsang';
    background-image: linear-gradient(135deg, #191970 0%, #483D8B 40%, #9370DB 100%);
    height: 100vh;
}

.hover__wrap {
    display: flex;
    justify-content:center;
    align-items: center;
    height:100vh;
}

.hover__wrap > div {
    max-width: 400px;
    margin: 3%;
    position: relative;
    perspective: 1000px;
}
.hover__wrap > div img {
    width: 100%;
    border: 10px solid #F0F8FF;
    box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
    box-sizing: border-box;
    vertical-align: top;
}
.hover__wrap > div .front {
    transition: transform 1s;
    backface-visibility: hidden;
    transform-style: preserve-3d;
}
.hover__wrap > div .back {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    transition: transform 1s;
    transform-style: preserve-3d;
}
.hover__wrap > div  figcaption {
    background: rgba(0,0,0,0.4);
    color: #F8F8FF;
    padding: 10px;
    text-align: center;
    line-height: 1.5;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) translateZ(100px);
    width: 60%;
    backface-visibility: hidden;
}

/* mouse hover effect */
.hover__updown .front {
    transform: rotateX(0deg);
}
.hover__updown:hover .front {
    transform: rotateX(180deg);
}
.hover__updown .back {
    transform: rotateX(-180deg);
}
.hover__updown:hover .back {
    transform: rotateX(0deg);
}

.hover__leftright .front {
    transform: rotateY(0deg);
}
.hover__leftright:hover .front {
    transform: rotateY(180deg);
}
.hover__leftright .back {
    transform: rotateY(-180deg);
}
.hover__leftright:hover .back {
    transform: rotateY(0deg);
}

결과


'CSS' 카테고리의 다른 글

CSS - 움직이는 육면체  (3) 2022.09.22
CSS - 통통 튀는 글자 효과  (2) 2022.09.22
CSS 애니메이션  (0) 2022.09.07
SVG 알아보기  (5) 2022.09.07
정신없이 움직이는 원 애니메이션  (1) 2022.09.02

댓글


자바스크립트

Javascript

자세히 보기
html
css
광고 준비중입니다.
<