만드는 방법: 3D 플립 박스
CSS로 플립 박스를 만드는 방법을 배우세요。
플립 박스
아래의 상자에 마우스를 가져가서 효과를 확인하세요:
플립 박스를 만드는 방법
第一步 - 추가 HTML:
<div class="flip-box"> <div class="flip-box-inner"> <div class="flip-box-front"> <h2>Front Side</h2> </div> <div class="flip-box-back"> <h2>Back Side</h2> </div> </div> </div>
第二步 - CSS 추가:
/* 덮개 상자 컨테이너 - 원하는 너비와 높이를 설정합니다. 우리는 보여주기 위해 border 속성을 추가했습니다. 마우스가 가까이 가면 회전이 상자 밖으로 벗어나는 효과를 생성합니다 (3D 효과가 필요하지 않다면 perspective를 제거하세요) */ .flip-box { background-color: transparent; width: 300px; height: 200px; border: 1px solid #f1f1f1; perspective: 1000px; /* 3D 효과가 필요하지 않다면 이 줄을 제거하세요 */ } /* 이 컨테이너는 정면과 뒷면을 정위치하기 위해 사용됩니다 */ .flip-box-inner { position: relative; width: 100%; height: 100%; text-align: center; transition: transform 0.8s; transform-style: preserve-3d; } /* 마우스가 회전 상자 컨테이너에 이동할 때, 수평 회전을 수행합니다 */ .flip-box:hover .flip-box-inner { transform: rotateY(180deg); } /* 정면과 뒷면 정위치 */ .flip-box-front, .flip-box-back { position: absolute; width: 100%; height: 100%; -webkit-backface-visibility: hidden; /* Safari */ backface-visibility: hidden; } /* 정면 스타일 설정 */ .flip-box-front { background-color: #bbb; color: black; } /* 뒷면 스타일 설정 */ .flip-box-back { background-color: dodgerblue; color: white; transform: rotateY(180deg); }
수직 전환
수직 전환 대신 수평 전환을 수행하려면, 다음을 사용하세요 rotateX
메서드 대신 rotateY
:
예제
.flip-box:hover .flip-box-inner { transform: rotateX(180deg); } .flip-box-back { transform: rotateX(180deg); }
주의:이 예제는 태블릿 컴퓨터나/또는 스마트폰에서 정상적으로 작동하지 않을 수 있습니다.
관련 페이지
강의:CSS 2D 변환
강의:CSS 3D 변환