css3 - 变形处理 transform

在css3中可以利用transform功能来实现文字图像的旋转、缩放、倾斜、移动这四种类型的变形处理
兼容性:

浏览器SafariChrome 8+Firefox 4+Opera 10+
各个浏览器写法-webkit-transform-webkit-transform-moz-transform-o-transform

1.旋转 rotate

这里写图片描述

html:

<div>示例文字</div>   

css:

div {
    width: 250px;
    background-color: pink;
    text-align: center;
    margin: 200px auto;

    -webkit-transform: rotate(45deg);/*兼容Chrome、Safari*/
    -moz-transform: rotate(45deg);/*兼容Firefox*/
    -o-transform: rotate(45deg);/*兼容Opera*/   
}

解析:rotate(45deg)含义:rotate是旋转,45deg是旋转角度;旋转方向为顺时针;

2.缩放 scale

使用scale方法来实现文字或图像的缩放处理,在参数中指定缩放倍率,例如:scale(0.5)表示缩小50%;

这里写图片描述这里写图片描述这里写图片描述

html:

<div>示例文字</div>

css:

div {
      width: 250px;
      background-color: pink;
      text-align: center;      

      -webkit-transform: scale(0.5);/*兼容Chrome、Safari*/
      -moz-transform: scale(0.5);/*兼容Firefox*/
      -o-transform: scale(0.5);/*兼容Opera*/   
}

解析:
图一是原图,没有任何缩放;
图二是缩小50%;
图三是X轴缩小50%,Y轴放大2倍;即:-webkit-transform: scale(0.5,2);

3.倾斜 skew

使用skew方法来实现文字或图像的倾斜处理,在参数中分别指定水平方向倾斜角度、垂直方向倾斜角度,例如:skew(30deg,40deg)表示水平方向倾斜30度,垂直方向倾斜40度;

这里写图片描述这里写图片描述

html:

<div>示例文字</div>

css:

  div {
      width: 200px;
      background-color: pink;
      text-align: center;      

      -webkit-transform: skew(30deg,30deg);/*兼容Chrome、Safari*/
      -moz-transform: skew(30deg,30deg);/*兼容Firefox*/
      -o-transform: skew(30deg,30deg);/*兼容Opera*/   
}

解析:如果skew():中参数只写一个,代表只在水平方向上进行倾斜,垂直方向上不倾斜;如图二;

4.移动 translate

使用translate方法来实现文字或图像的移动处理,在参数中分别指定水平方向移动距离、垂直方向移动距离,例如:translate(50px,50px)表示水平方向移动50px,垂直方向移动50px;

css:

div {
      width: 200px;
      background-color: pink;
      text-align: center;     

      -webkit-transform: translate(50px,50px);/*兼容Chrome、Safari*/
      -moz-transform: translate(50px,50px);/*兼容Firefox*/
      -o-transform: translate(50px,50px);/*兼容Opera*/   
}

5.综合使用

在使用transform方法进行文字或图像的变形时,是以元素的中心点为基准点进行的。使用transform-origin属性,可以改变变形的基准点。

这里写图片描述 这里写图片描述

html:

<div class="a"></div>
<div class="b"></div>

第一张图不修改基准点的css:

div {
   display: inline-block;
    width: 100px;
    height: 100px;
}
div.a {      
    background-color: pink;
}
div.b {      
    background-color: green;      

    -webkit-transform: rotate(45deg);/*兼容Chrome、Safari*/
    -moz-transform: rotate(45deg);/*兼容Firefox*/
    -o-transform: rotate(45deg);/*兼容Opera*/
}

第二张修改基准点的css:

div {
    display: inline-block;
    width: 100px;
    height: 100px;
}
div.a {      
    background-color: pink;
}
 div.b {      
    background-color: green;      

    -webkit-transform: rotate(45deg);/*兼容Chrome、Safari*/
    -moz-transform: rotate(45deg);/*兼容Firefox*/
    -o-transform: rotate(45deg);/*兼容Opera*/
    /*修改变形基准点*/
    -webkit-transform-origin: left bottom;/*兼容Chrome、Safari*/
    -moz-transform-origin: left bottom;/*兼容Firefox*/
    -o-transform-origin: left bottom;/*兼容Opera*/      
}

解析:
transform-origin参数分别是:基准点在水平方向上的位置(left、center、right)、基准点在垂直方向上的位置(top、center、bottom);
其中 水平方向上的位置中可取值为:left、center、right;
垂直方向上的位置中可取值为:top、center、bottom;

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值