>웹 프론트엔드 >CSS 튜토리얼 >변환 속성을 사용하는 방법

변환 속성을 사용하는 방법

青灯夜游
青灯夜游원래의
2019-02-11 14:29:2611964검색

Transform 속성은 요소에 2D 또는 3D 변환을 적용하는 데 사용됩니다. 이 속성을 사용하면 요소를 회전, 크기 조정, 이동 또는 기울일 수 있습니다.

변환 속성을 사용하는 방법

CSS3 변환 속성

#🎜 🎜 #기능: Transform 속성은 요소에 2D 또는 3D 변환을 적용합니다. 이 속성을 사용하면 요소를 회전, 크기 조정, 이동 또는 기울일 수 있습니다.

구문:

transform: none|transform-functions;

속성 값 설명을 가질 수 있음:

none : 정의가 변환되지 않습니다.​

matrix(n,n,n,n,n,n): 6개 값의 행렬을 사용하여 2D 변환을 정의합니다.

matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n) 4x4 16개 값을 사용하여 3D 변환 정의 행렬.​

translate(x,y): 2D 변환을 정의합니다.​

translate3d(x,y,z): 3D 변환을 정의합니다.​

translateX(x): X축 값만 사용하여 변환을 정의합니다.

translateY(y): Y축 값만 사용하여 변환을 정의합니다.​​

translateZ(z): Z축 값만 사용하여 3D 변환을 정의합니다.​

scale(x,y): 2D 스케일링 변환을 정의합니다.​​​

scale3d(x,y,z): 3D 스케일링 변환을 정의합니다.​

scaleX(x): X축 값을 설정하여 스케일링 변환을 정의합니다.​

scaleY(y): Y축 값을 설정하여 스케일링 변환을 정의합니다.​

scaleZ(z): Z축 값을 설정하여 3D 스케일링 변환을 정의합니다.​

rotate(angle) : 2D 회전을 정의하고 파라미터에 각도를 지정합니다.​

rotate3d(x,y,z,angle): 3차원 회전을 정의합니다.​

rotateX(angle): X축을 따라 3D 회전을 정의합니다.​

rotateY(angle): Y축을 따라 3D 회전을 정의합니다.

rotateZ(angle): Z축을 따라 3D 회전을 정의합니다.​

skew(x-angle,y-angle): X 및 Y축을 따라 2D 기울이기 변환을 정의합니다.

skewX(angle): X축을 따라 2D 기울이기 변환을 정의합니다.​

skewY(angle): Y축을 따라 2D 기울이기 변환을 정의합니다.

spective(n): 3D 변환 요소에 대한 투시도를 정의합니다.​

참고: Internet Explorer 10, Firefox 및 Opera는 변환 속성을 지원합니다. Internet Explorer 9에서는 대체 -ms-transform 속성(2D 변환에만 해당)을 지원합니다. Safari 및 Chrome은 대체 -webkit-transform 속성(3D 및 2D 변환)을 지원합니다. Opera는 2D 변환만 지원합니다.

CSS3 변환 속성 사용 예

<!DOCTYPE html>
<html>
<head>
<style> 
*, *:after, *:before {
  box-sizing: border-box;
}
body {
  background: #F5F3F4;
  margin: 0;
  padding: 10px;
  font-family: &#39;Open Sans&#39;, sans-serif;
  text-align: center;
}
h2, h4 {
  font-weight: 400;
  color: #4d4d4d;
}
.card {
  display: inline-block;
  margin: 10px;
  background: #fff;
  padding: 10px;
  min-width: 180px;
  box-shadow: 0 3px 5px #ddd;
  color: #555;
}
.card .box {
  width: 60px;
  height: 60px;
  margin: auto;
  background: #ddd;
  cursor: pointer;
  box-shadow: 0 0 5px #ccc inset;
}
.card .box .fill {
  width: 60px;
  height: 60px;
  position: relative;
  background: #03A9F4;
  opacity: .5;
  box-shadow: 0 0 5px #ccc;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.card p {
  margin: 25px 0 0;
}
.rotate:hover .fill {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.rotateX:hover .fill {
  -webkit-transform: rotateX(45deg);
  transform: rotateX(45deg);
}
.rotateY:hover .fill {
  -webkit-transform: rotateY(45deg);
  transform: rotateY(45deg);
}
.rotateZ:hover .fill {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.scale:hover .fill {
  -webkit-transform: scale(2, 2);
  transform: scale(2, 2);
}
.scaleX:hover .fill {
  -webkit-transform: scaleX(2);
  transform: scaleX(2);
}
.scaleY:hover .fill {
  -webkit-transform: scaleY(2);
  transform: scaleY(2);
}
.skew:hover .fill {
  -webkit-transform: skew(45deg, 45deg);
  transform: skew(45deg, 45deg);
}
.skewX:hover .fill {
  -webkit-transform: skewX(45deg);
  transform: skewX(45deg);
}
.skewY:hover .fill {
  -webkit-transform: skewY(45deg);
  transform: skewY(45deg);
}
.translate:hover .fill {
  -webkit-transform: translate(45px, 1em);
  transform: translate(45px, 1em);
}
.translateX:hover .fill {
  -webkit-transform: translateX(45px);
  transform: translateX(45px);
}
.translateY:hover .fill {
  -webkit-transform: translateY(45px);
  transform: translateY(45px);
}
.matrix:hover .fill {
  -webkit-transform: matrix(2, 2, 0, 2, 45, 0);
  transform: matrix(2, 2, 0, 2, 45, 0);
}
</style>
</head>
<body>
<!-- Rotate-->
<div class="card">
  <div class="box rotate">
    <div class="fill"></div>
  </div>
  <p>rotate(45deg)  </p>
</div>
<div class="card">
  <div class="box rotateX">
    <div class="fill"></div>
  </div>
  <p>rotateX(45deg)</p>
</div>
<div class="card">
  <div class="box rotateY">
    <div class="fill"></div>
  </div>
  <p>rotateY(45deg)</p>
</div>
<div class="card">
  <div class="box rotateZ">
    <div class="fill"></div>
  </div>
  <p>rotateZ(45deg)  </p>
</div>
<!-- scale-->
<div class="card">
  <div class="box scale">
    <div class="fill"></div>
  </div>
  <p>scale(2)</p>
</div>
<div class="card">
  <div class="box scaleX">
    <div class="fill"></div>
  </div>
  <p>scaleX(2)    </p>
</div>
<div class="card">
  <div class="box scaleY">
    <div class="fill"></div>
  </div>
  <p>scaleY(2)    </p>
</div>
<!-- skew-->
<div class="card">
  <div class="box skew">
    <div class="fill"></div>
  </div>
  <p>skew(45deg, 45deg)  </p>
</div>
<div class="card">
  <div class="box skewX">
    <div class="fill"></div>
  </div>
  <p>skewX(45deg)</p>
</div>
<div class="card">
  <div class="box skewY">
    <div class="fill"></div>
  </div>
  <p>skewY(45deg)</p>
</div>
<!-- translate-->
<div class="card">
  <div class="box translate">
    <div class="fill"></div>
  </div>
  <p>translate(45px)  </p>
</div>
<div class="card">
  <div class="box translateX">
    <div class="fill"></div>
  </div>
  <p>translateX(45px)</p>
</div>
<div class="card">
  <div class="box translateY">
    <div class="fill"></div>
  </div>
  <p>translateY(45px)</p>
</div>
<div class="card">
  <div class="box matrix">
    <div class="fill"></div>
  </div>
  <p> matrix(2, 2, 0, 2, 45, 0)</p>
</div>
</body>
</html>

Rendering:

#🎜 🎜#

위 내용은 변환 속성을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.