html
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>3D魔方</title>
<link href="3d.css" rel="stylesheet" type="text/css">
</head>
<body>
<h2 align="center"> 3d魔方</h2>
<!-- 视图-->
<div id="view">
<div id="box">
<!-- 盒子容器-->
<!-- 盒子前面-->
<div class="div1">
<table bgcolor="#8a2be2" >
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
<!-- 盒子下面-->
<div class="div2">
<table bgcolor="#8b008b">
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
<!-- 盒子上面-->
<div class="div3">
<table bgcolor="#556b2f" >
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
<!-- 盒子盒子后面-->
<div class="div4">
<table bgcolor="#228b22" >
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
<!-- 盒子盒子左面-->
<div class="div5">
<table bgcolor="#b0c4de" >
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
<!-- 盒子右面-->
<div class="div6">
<table bgcolor="fuchsia" >
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
</table>
</div>
</div>
</div>
</body>
</html>
css
* {
margin: 0px;
padding: 0px;
}
html,
body {
height: 100%;
background: linear-gradient(135deg, #000, #FFF);
}
h2 {
padding: 50px;
}
table {
box-sizing: border-box;
width: 100%;
height: 100%;
border-collapse: collapse;
}
table tr {
border-top: 1px solid #333;
border-left: 1px solid #333;
}
table td {
border-bottom: 1px solid #333;
border-right: 1px solid #333;
}
#view {
width: 160px;
height: 160px;
margin: 80px auto 0 auto;
}
#box {
-webkit-animation-name: animation;
-webkit-animation-timing-function: ease-in-out;
-webkit-animation-iteration-count: infinite;
-webkit-animation-duration: 3s;
-webkit-transform-style: preserve-3d;
-webkit-transform-origin: 80px 80px 0;
/*-webkit-perspective: 210px; */
/*-webkit-perspective-origin: -75px -75px; */
}
@-webkit-keyframes animation {
16% {
-webkit-transform: rotateY(-90deg);
}
33% {
-webkit-transform: rotateY(-90deg) rotateZ(135deg);
}
50% {
-webkit-transform: rotateY(225deg) rotateZ(135deg);
}
66% {
-webkit-transform: rotateY(135deg) rotateX(135deg);
}
83% {
-webkit-transform: rotateX(135deg);
}
}
#box > div {
position: absolute;
height: 160px;
width: 160px;
text-align: center;
font-size: 40px;
}
/* 兼容性写法如下 */
#box .div1 {
transform: translateZ(80px);
-webkit-transform: translateZ(80px);
/* Safari 和 Chrome */
-ms-transform: translateZ(80px)/* IE 9 */
-moz-transform: translateZ(80px)/* Firefox */
-o-transform: translateZ(80px);
/* Opera */
}
#box .div2 {
-webkit-transform: rotateX(-90deg) translateZ(80px);
}
#box .div3 {
-webkit-transform: rotateY(90deg) rotateX(90deg) translateZ(80px);
}
#box .div4 {
-webkit-transform: rotateY(180deg) rotateZ(90deg) translateZ(80px);
}
#box .div5 {
-webkit-transform: rotateY(-90deg) rotateZ(180deg) translateZ(80px);
}
#box .div6 {
-webkit-transform: rotateY(90deg) translateZ(80px);
}