CSS3–transform 变形金刚

原文地址:http://missdora.net/blog/2010-05/css3-transform

transform可以对元素进行角度旋转和缩放,请使用webkit内核最新版浏览器浏览该文章以保证CSS3效果能够完全呈现

有五种变形样式,可以重叠多种变形样式,以空格分隔

  • scale:缩放,1为原始大小。scale(x)。正数放大,负数缩小。属性值为一个时,x/y轴同时缩放;属性值为两个值时,分别控制x、y轴的缩放。
  • rotate:水平旋转,属性值格式为Xdeg。rotate(Xdeg)。X为正数时,顺时针旋转;为负数时,逆时针旋转
  • translate:定位元素,基于XY轴重新定位元素。translate(Xpx,Ypx)。属性值为一个时,x、y轴参数相同;为两个时,x、y轴分别定位
  • skew:将元素沿水平方向倾斜变形。skew(Xdeg,Ydeg)。这个比较难表述,想象一下平行四边形吧。属性值为一个时,x、y轴参数相同;为两个时,x、y轴各自倾斜。
  • matrix:矩阵,六个值。矩阵变形(学习完毕之后更新)

浏览器支持情况:-webkit-transform,-moz-transform,-o-transform,目前对CSS3动画支持的最好最全面的是webkit内核浏览器。

在设置了transform属性后,可以设置transform-origin属性,这个属性控制变形时的源点,也就是变形时围绕的点。这个属性接受两个参数,可以是百分比、top/center/bottom、带单位的数值。

示例1:scale

scale, hover me
.scale{height:50px;width:100px;background:red;-webkit-transition:all .5s ease;}
.scale:hover{-webkit-transform:scale(1.5);-moz-transform:scale(1.5);-o-transform:scale(1.5);}
scale with origin, hover me
.scale:hover{
-webkit-transform:scale(1.5);
-moz-transform:scale(1.5);
-o-transform:scale(1.5);}
.origin{-webkit-transform-origin:top center;}
/*设定了变换源点,下面几个例子中也有设定了变幻源点后的示例*/

示例2:rotate

rotate, hover me
.rotate:hover{
-webkit-transform:rotate(10deg);
-moz-transform:rotate(10deg);
-o-transform:rotate(10deg);}
rotate with origin, hover me

示例3:translate

translate, hover me
.translate:hover{
-webkit-transform:translate(10px,-10px);
-moz-transform:translate(10px,-10px);
-o-transform:translate(10px,-10px);}
translate with origin, hover me

示例4:skew

skew, hover me
.skew:hover{
-webkit-transform:skew(20deg,-10deg);
-moz-transform:skew(20deg,-10deg);
-o-transform:skew(20deg,-10deg);}
skew with origin, hover me

示例5:matrix

matrix, hover me
.matrix:hover{
-webkit-transform:matrix(1, -0.2, 0, 1, 0, 0);
-moz-transform:matrix(1, -0.2, 0, 1, 0, 0);
-o-transform:matrix(1, -0.2, 0, 1, 0, 0);}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSS 3D 中的 transform 属性用于定义元素的变换方式,包括平移、旋转、缩放、斜切等。 transform 属性有多个取值,其中常见的包括: 1. translate:用于定义元素的平移变换,可以设置 X 轴、Y 轴和 Z 轴的平移距离。 2. rotate:用于定义元素的旋转变换,可以设置 X 轴、Y 轴和 Z 轴的旋转角度。 3. scale:用于定义元素的缩放变换,可以设置 X 轴、Y 轴和 Z 轴的缩放比例。 4. skew:用于定义元素的斜切变换,可以设置 X 轴和 Y 轴的倾斜角度。 下面是一个例子,展示了如何使用 transform 属性实现一个立方体的效果: ```css .cube { width: 200px; height: 200px; position: relative; transform-style: preserve-3d; } .cube .face { position: absolute; width: 200px; height: 200px; opacity: 0.8; } .cube .front { transform: translateZ(100px); background-color: #f00; } .cube .back { transform: rotateY(180deg) translateZ(100px); background-color: #0f0; } .cube .top { transform: rotateX(-90deg) translateZ(100px); background-color: #00f; } .cube .bottom { transform: rotateX(90deg) translateZ(100px); background-color: #ff0; } .cube .left { transform: rotateY(-90deg) translateZ(100px); background-color: #f0f; } .cube .right { transform: rotateY(90deg) translateZ(100px); background-color: #0ff; } ``` 在这个例子中,我们定义了一个立方体容器 .cube,同时给它的每个面 .face 加上了不同的背景颜色。通过设置每个面的 transform 属性,我们让立方体相对于自身进行了平移、旋转和缩放等变换,从而实现了 3D 的效果。注意,我们还设置了 transform-style 属性为 preserve-3d,以保证子元素也可以继承父元素的 3D 特性。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值