【CSS3动画】transform对文字及图片的旋转、缩放、倾斜和移动
前言:之前我有写过CSS3的transform这一这特性,对于它的用法,还不是很透彻,今天补充补充,呵呵 你懂的,小司机准备开车了。
a)再提一提transform的四个属性
①旋转--->rotate(参数a),单位deg,表示旋转角度,正数顺时针,负数逆时针。
②缩放--->scale(参数a),单位1,也就是“没有单位”,赤裸裸的0-1之间的数字就行,表示为缩放比例。
③倾斜--->skew(参数a,参数b),单位deg,两个参数分别表示x,y方向上的倾斜角度,正数顺时针,负数逆时针。
④移动--->translate(参数a),单位px,移动方向是在div这个平面方向上(这样说起来,应该有点难理解,放在四维坐标中,把div看做是任意一个平面来理解),也有正数之分,正向前,负向后。
1)旋转(rotate),我们先来做一个文字的旋转,就像下面这样
/* HTML */
<div class="div1">我只是一个示例</div>
然后再给它写点样式
/* CSS */
.div1 {
width: 200px;
height: 50px;
font-size: 20px;
line-height: 50px;
text-align: center;
border: 1px solid;
margin: 100px auto;
-moz-transform: rotate(45deg);/* Firefox 旋转属性,参数表示角度(deg表示角度),负数逆时针,正数顺时针 */
-webkit-transform: rotate(45deg);/* Safari和Chrome */
-ms-transform: rotate(45deg);/* IE 9 */
-o-transform: rotate(45deg);/* Opera */
}
这是效果图:下图是一行文字,被顺时针旋转45度后的效果图。

2)缩放(scale)
/* HTML */
<div class="div2">我只是一个示例</div>
/* CSS */
.div2 {
width: 612px;
height: 408px;
font-size: 20px;
margin: 100px auto;
background: url(img/4.jpg);
-moz-transform: scale(0.5);/* 缩放属性 ,参数表示缩放倍数,0-1之间 */
-webkit-transform: scale(0.5);
-ms-transform: scale(0.5);
-o-transform: scale(0.5);
}
这是效果图:下图表示,原图和被缩小0.5倍后的效果图

3)倾斜(skew)
/* HTML */
<div class="div3">我只是一个示例</div>
/* CSS */
.div3 {
width: 412px;
height: 208px;
font-size: 20px;
margin: 100px auto;
background: url(img/4.jpg);
-moz-transform: skew(30deg, 30deg);/* 倾斜属性,参数分别表示x,y方的倾斜角度,负数逆时针,正数顺时针 */
-webkit-transform: skew(30deg, 30deg);
-ms-transform: skew(30deg, 30deg);
-o-transform: skew(30deg, 30deg);
}
这是效果图:下图表示一张正图经过 x方向上顺时针旋转30度,y方向顺时针旋转30度后的效果。

4)移动(translate)
/* HTML */
<div class="div4">我只是一个示例</div>
/* CSS */
.div4 {
width: 612px;
height: 408px;
font-size: 20px;
margin: 100px auto;
background: url(img/4.jpg);
-moz-transform: translate(100px);/* 移动属性 ,移动方向是在div这个平面方向上,*/
-webkit-transform: translate(100px);
-ms-transform: translate(100px);
-o-transform: translate(100px);
}
我在写的时候,这个移动,单一用的话,真看不出什么效果,单一运用写出来的效果真的不尽人意,下面我们直接把四个属性组合起来,一起用,写一个看着逼格稍稍高点的效果,以往看着别的网站有这个效果,当时
觉得真不错,这两天有时间就把它写出来,呵呵,来看看吧!
5)整合:旋转、缩放、倾斜和移动。
首先了,我们要先敲出一个水平方向上的水平面,看着有点像四维的咯!
/* HTML */
<div class="div5">我只是一个示例</div>
/* CSS */
.div5 {
width: 612px;
height: 408px;
font-size: 20px;
color: #FFFFFF;
margin: 100px auto;
background: url(img/907878604.jpeg);
-moz-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);/* 旋转-缩放-倾斜-移动 */
-webkit-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
-ms-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
-o-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
box-shadow: -15px 7px 10px 3px #444;
float: left;
position: relative;
left: 30%; }
看看效果,是有点丑了!呵呵,如果配上一个3D背景,我相信效果会更好,视觉效果会更强

下面我们再写两个,复制修改下代码,再看看
/* HTML */
<div class="div5_1">我只是一个示例</div>
<div class="div5_2">我只是一个示例</div>
/* CSS */
.div5_1 {
width: 612px;
height: 408px;
font-size: 20px;
color: #FFFFFF;
margin: 40px auto;
background: url(907878604.jpeg);
-moz-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);/* 旋转-缩放-倾斜-移动 */
-webkit-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
-ms-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
box-shadow: -15px 7px 10px 3px #444;
position: absolute;
left: 30%;
}
.div5_2 {
width: 612px;
height: 408px;
font-size: 20px;
color: #FFFFFF;
margin: -20px auto;
background: url(img/907878604.jpeg);
-moz-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);/* 旋转-缩放-倾斜-移动 */
-webkit-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
-ms-transform: rotate(-17deg) scale(0.5) skew(67deg) translate(0px);
box-shadow: -15px 7px 10px 3px #444;
position: absolute;
left: 30%;
}
看着是不是空间感更强了,如果你细心研究,写在页面上的话,再加一些事件、色彩在它上面,我相信,视觉冲击力就上来了。

总结:transform的几个属性用法就是这样的,前端的各种特效,都是自己慢慢细心研究出来的,特效嘛,就像拍电影一样,要投入时间和精力,你做出来的东西才会耳目一新,页面给用户的视觉感,色彩感才会更强。这是关于CSS3的动画、阴影的一个地址,可以参考学习下http://www.css3maker.com/
交流群:192713488
【CSS3动画】transform对文字及图片的旋转、缩放、倾斜和移动的更多相关文章
- Css3动画效果,彩色文字效果,超简单的loveHeart
<!DOCTYPE html><html><head><meta charset="utf-8" /><title>Cs ...
- PIL图片合成旋转缩放
用PIL实现图片的旋转,缩放,合成 我们需要知道合成位置的中心点坐标,用中心点坐标,不使用左顶点的坐标是由于缩放过程容易计算. 假设A是局部透明的图片,我们希望把B放在A的底部,仅从A的透明部分显示B ...
- CSS3 动画-- 鼠标移上去,div 会旋转、放大、移动
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- CSS基础 transform属性的基本使用 移动 旋转 缩放
1.实现元素位移效果 语法:transform:translate(x轴水平移动距离,Y轴垂直移动距离) 取值:正负都可以 取值方式:数字+px 百分比 :参照自己本的盒子的百分比 比如:本身自己的宽 ...
- css3 动画应用 animations 和transtions transform在加上JavaScript 可以实现硬件加速动画。
transitions(过渡) 被应用于元素指定的属性变化时,该属性经过一段时间逐渐的过渡到最终想要的值. 主要包括四个属性: 执行变换的属性:transition-property 变换延续的时间: ...
- css3 变形(transform)、转换(transition)和动画(animation)
http://www.w3cplus.com/content/css3-transform/ 在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动tr ...
- CSS3动画属性:变形(transform)
Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix. 语法 t ...
- 使用CSS3动画属性实现各种旋转跳跃
Transform字面上就是变形,改变的意思.在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动translate以及矩阵变形matrix. tran ...
- CSS3 动画及过渡详解
今天开始我们一起来学习有关于CSS3制作动画的几个属性:变形(transform).过渡(transition)和动画(animation)等CSS3技术. 首先我们先来了解一下变形(transfor ...
随机推荐
- 使用HTML5开发Kinect体感游戏
一.简介 我们要做的是怎样一款游戏? 在前不久成都TGC2016展会上,我们开发了一款<火影忍者手游>的体感游戏,主要模拟手游章节<九尾袭来 >,用户化身四代,与九尾进行对决, ...
- Unity 序列化
Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http://docs ...
- Matlab 绘制三维立体图(以地质异常体为例)
前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...
- 独立开发 一个社交 APP 的架构分享 (已实现)
(本博客为原创:http://www.cnblogs.com/linguanh/) My BananaCloud Android Application 前言: 这算是我的第一个 完完全全 由自 ...
- C# 对象实例化 用json保存 泛型类 可以很方便的保存程序设置
参考页面: http://www.yuanjiaocheng.net/webapi/test-webapi.html http://www.yuanjiaocheng.net/webapi/web-a ...
- Xamarin Android 应用程序内图标上数字提示
最近在用 Xamarin 做一个 Android 应用,打开应用时,如果有新消息,需要在应用内的 Toolbar 或者首页的图标上显示数字提示.在这里和大家分享一下实现方法,如果你有更新好的实现方法, ...
- BZOJ 1010: [HNOI2008]玩具装箱toy [DP 斜率优化]
1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 9812 Solved: 3978[Submit][St ...
- python之浅拷贝和深拷贝
1.浅拷贝 1>赋值:从下面的例子我们可以看到赋值之后新变量的内存地址并没有发生任何变化,实际上python中的赋值操作不会开辟新的内存空间,它只是复制了新对象的引用,也就是说除了b这个名字以外 ...
- [DS] 标记字段
标记字段 代码中有时候有这种需求:需要一个公共访问的标记字段,以下称为标记字段. 下面是案例: 一个订单详情页面,如果页面在显示中,程序中其它地方需要访问这个"正在查看中"的订单信 ...
- [PHP源码阅读]count函数
在PHP编程中,在遍历数组的时候经常需要先计算数组的长度作为循环结束的判断条件,而在PHP里面对数组的操作是很频繁的,因此count也算是一个常用函数,下面研究一下count函数的具体实现. 我在gi ...