만드는 방법: 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 변환