transform案例示意图

效果:

当点击每个蓝色方块的时候后都会有相应的效果。

代码:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="{CHARSET}"/>
		<title></title>
		<style type="text/css">
			*, *:after, *:before {
  				box-sizing: border-box;
			}
			h1 {
  				color: #4c4c4c;
 				 font-weight: 600;
  				border-bottom: 1px solid #ccc;
				}

			h2, h4 {
  				font-weight: 400;
  				color: #4d4d4d;
			}
			body{
				background: #F5F3F4;
				text-align: center;
				background: #F5F3F4;
  				margin: 0;
  				padding: 10px;

			}
			.card{
				background: #fff;
				margin: 15px;
				padding: 20px 20px 10px 20px;
				box-shadow: 0 3px 5px #ddd;
				display: inline-block;
				min-width: 200px;
			}
			.box{
				width: 100px;
				height: 100px;
				background: #ddd;
				cursor: pointer;
				margin: auto;
			}
			.fill{
				width: 100px;
				height: 100px;
				background: #03A9F4;
				opacity: .5;
				position: relation;
				box-shadow: 0 0 5px #ccc;
				transition: 0.3s;
			}
			p{
				margin: 20px 0 0;
			}
			.rotate:hover .fill{
				transform: rotate(45deg);
			}
			.rotateX:hover .fill{
				transform: rotateX(45deg);
			}
			.rotateY:hover .fill{
				transform: rotateY(45deg);
			}
			.rotateZ:hover .fill{
				transform: rotateZ(45deg);
			}
			.scale:hover .fill {
 				 -webkit-transform: scale(2);
  				transform: scale(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);
			}

			.perspective-100 .box {
  				-webkit-perspective: 100px;
  				perspective: 100px;
			}

			.perspective-200 .box {
  				-webkit-perspective: 200px;
  				perspective: 200px;
			}

			.to-100-0-0 {
  				-webkit-transform-origin: 100% 0 0;
          		transform-origin: 100% 0 0;
			}

			.to-0-100-0 {
  				-webkit-transform-origin: 0 100% 0;
          		transform-origin: 0 100% 0;
			}
		</style>
	</head>
	<body>
		<h1>Css3 Transform</h1>
		<!-- Rotate-->
		<div class="card">
			<div class="box rotate">
				<div class="fill"></div>
			</div>
			<p>roate(45deg)</p>
		</div>
		<div class="card">
			<div class="box rotateX">
				<div class="fill"></div>
			</div>
			<p>roateX(45deg)</p>
		</div>
		<div class="card">
			<div class="box rotateY">
				<div class="fill"></div>
			</div>
			<p>roateY(45deg)</p>
		</div>
		<div class="card">
			<div class="box rotateZ">
				<div class="fill"></div>
			</div>
			<p>roateZ(45deg)</p>
		</div>
		<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>
		<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>
<h4>Perspective : 100</h4>
<div class="perspective-100">
  <div class="card">
    <div class="box rotateX">
      <div class="fill"></div>
    </div>
    <p>rotateX(90deg)</p>
  </div>
  <div class="card">
    <div class="box rotateY">
      <div class="fill"></div>
    </div>
    <p>rotateY(45deg)</p>
  </div>
</div>
<h4>Perspective : 200</h4>
<div class="perspective-200">
  <div class="card">
    <div class="box rotateX">
      <div class="fill"></div>
    </div>
    <p>rotateX(90deg)</p>
  </div>
  <div class="card">
    <div class="box rotateY">
      <div class="fill"></div>
    </div>
    <p>rotateY(45deg)</p>
  </div>
</div>
<!-- transform origin-->
<h2>Transform origin</h2>
<div class="card">
  <div class="box rotate">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100% 0 0  <br/>rotate(45deg)</p>
</div>
<div class="card">
  <div class="box rotate">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0<br/>rotate(45deg)</p>
</div>
<div class="card perspective-200">
  <div class="box rotateX">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0<br/>rotateX(45deg)</p>
</div>
<div class="card perspective-200">
  <div class="box rotateX">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100% 0 0<br/>rotateX(45deg)</p>
</div>
<div class="card perspective-200">
  <div class="box rotateY">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0 <br/>rotateY(45deg)</p>
</div>
<div class="card perspective-200">
  <div class="box rotateY">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100%  0 0<br/>rotateY(45deg)</p>
</div>
<div class="card">
  <div class="box scale">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100%  0 0<br/>scale(2)</p>
</div>
<div class="card">
  <div class="box scale">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0<br/>scale(2)</p>
</div>
<div class="card">
  <div class="box scaleX">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100%  0 0<br/>scaleX(2)</p>
</div>
<div class="card">
  <div class="box scaleX">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0<br/>scaleX(2)</p>
</div>
<div class="card">
  <div class="box scaleY">
    <div class="fill to-100-0-0"></div>
  </div>
  <p>transform-origin : 100%  0 0<br/>scaleY(2)</p>
</div>
<div class="card">
  <div class="box scaleY">
    <div class="fill to-0-100-0"></div>
  </div>
  <p>transform-origin : 0 100%  0<br/>scaleY(2)</p>
</div>
	</body>
</html>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值