8-4 CSS3中的变形--位移 translate()
本节编程练习不计算学习进度,请电脑登录imooc.com操作

CSS3中的变形--位移 translate()

translate()函数可以将元素向指定的方向移动,类似于position中的relative。或以简单的理解为,使用translate()函数,可以把元素从原来的位置移动,而不影响在X、Y轴上的任何Web组件。

translate我们分为三种情况:

1、translate(x,y)水平方向和垂直方向同时移动(也就是X轴和Y轴同时移动)

2、translateX(x)仅水平方向移动(X轴移动)

3、translateY(Y)仅垂直方向移动(Y轴移动)

实例演示:通过translate()函数将元素向Y轴下方移动50px,X轴右方移动100px。

HTML代码:

<div class="wrapper">
  <div>我向右向下移动</div>
</div>

CSS代码:

.wrapper {
  width: 200px;
  height: 200px;
  border: 2px dotted red;
  margin: 20px auto;
}
.wrapper div {
  width: 200px;
  height: 200px;
  line-height: 200px;
  text-align: center;
  background: orange;
  color: #fff;
  -webkit-transform: translate(50px,100px);
  -moz-transform:translate(50px,100px);
  transform: translate(50px,100px);
}

演示结果

 

 

任务

在CSS编辑器第9-11行输入正确代码,让不知道宽度和高度的元素实现水平垂直居中。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>变形与动画</title>
  6. <link href="style.css" rel="stylesheet" type="text/css">
  7. </head>
  8. <body>
  9. <div class="wrapper">
  10. 我不知道我的宽度和高是多少,我要实现水平垂直居中
  11. </div>
  12. </body>
  13. </html>
  1. .wrapper {
  2. padding: 20px;
  3. background:orange;
  4. color:#fff;
  5. position:absolute;
  6. top:50%;
  7. left:50%;
  8. border-radius: 5px;
  9. -webkit-transform:(-50%,-50%);
  10. -moz-transform:(-50%,-50%);
  11. transform:(-50%,-50%);
  12. }
下一节