关于CSS3的小知识点之2D变换
transition过渡 transition-duration:; 运动时间 transition-delay:; 延迟时间 transition-timing-function:; 运动形式 ease 逐渐变慢 (默认) linear 匀速 ease-in 加速 ease-out 减速 ease-in-out 先加速后减速 cubic-bezier 贝塞尔曲线(x1,y1,x2,y2) 通过控制曲线走势来改变运动效果
注:多样式同时进行过渡(需要异步过渡 则需在完成时间后再加一个参数:延迟时间)
例:transition:1s width,2s 1s height,3s 3s background;
transitionend事件(transition结束后触发的事件) 注意:1.每改变元素一个样式 会触发一次tranasitionend
在webkit内核中写法: obj.addEventListener('WebkitTransitionEnd',fn,false); 在标准下写法: obj.addEventListener('transitionend',fn,false);
-transform:; 变换 rotate(30deg) 旋转 围绕元素中心点旋转30度 skewX(45deg) 斜切 沿X轴向左拉伸45度 skewY(45deg) 斜切 沿Y轴向上拉伸45度 综合写法 skew(45deg,45deg) scaleX(2) 缩放 由中心点沿X轴向外扩展2倍 scaleY(0.5) 缩放 由中心点沿Y轴向内收缩2倍 综合写法 scale(2,0.5) translateX(100px) 位移 从左往右移动100px translateY(-100px) 位移 从下往上移动100px 综合写法 translate(100px,-100px)
注:transform 执行顺序 -- 后写先执行!
例:-webkit-transform:translateX(100px) scale(0.5); 与 -webkit-transform:scale(0.5) translateX(100px);
第一条样式先缩放0.5倍 再执行位移100px 第二条样式先执行平移100px 再缩放0.5倍 这时100px会随着缩放被缩放成50px
-transform-origin:; 变换基点 其值可为像素也可为关键字
-transform:matrix(); 矩阵 旋转 位移 缩放 斜切 都是通过matrix封装实现
matrix(1,0,0,1,0,0) 标准下 默认6个参数 (
matrix(a,b,c,d,e,f);
缩放 a,c,e表示X轴缩放 X轴缩放:a:a*缩放倍数 c:c*缩放倍数 e:e*缩放倍数 (e/c默认为0); b,d,f表示Y轴缩放 Y轴缩放:b:b*缩放倍数 d:d*缩放倍数 f:f*缩放倍数 (f/d默认为0);
斜切 c同时表示X轴斜切 c=Math.tan(Deg/180*Math*PI) b同时表示Y轴斜切 b=Math.tan(Deg/180*Math*PI)
位移 e:X轴的位移 位移的长度e+x;(e,f默认值为0) f:Y轴的位移 位移的长度f+y;
旋转 a/b/c/d共同控制旋转 a = Math.cos(deg/180*Math*PI) b = Math.sin(deg/180*Math*PI) c = -Math.sin(deg/180*Math*PI) d = Math.cos(deg/180*Math*PI) ) 兼容IE6及以上 缺少位移2个参数 progid:DXImageTransform.Microsoft.Matrix( M11= 1, M12= 0, M21= 0 , M22=1,SizingMethod='auto expand'); Matrix( M11= a, M12= c, M21= b , M22=d,SizingMethod='auto expand'); (
注意 IE下旋转不是围绕元素中心点旋转 解决方案:控制元素left/top; left = (父级offsetWidth-本身offsetWidth)/2 top = (父级offsetHeight-本身offsetHeight)
转载自:chun6.html
关于CSS3的小知识点之2D变换的更多相关文章
- IT兄弟连 HTML5教程 CSS3属性特效 2D变换1
通过CSS3转换,能够对元素进行移动.缩放.转动.拉长或拉伸.它如何工作?转换是使元素改变形状.尺寸和位置的一种效果.CSS3转换包括2D转换和3D转换,本小结我们来了解2D变换的转换方法. 转换属性 ...
- css3 过渡和2d变换——回顾
1.transition 语法:transition: property duration timing-function delay; transition-property 设置过渡效果的css ...
- CSS3 2D 变换
CSS2D transform 表示2D变换,目前获得了各主流浏览器的支持,是CSS3中具有颠覆性的特征之一,可以实现元素的位移.旋转.倾斜.缩放,甚至支持矩阵方式,可以取代大量之前只能靠Flash才 ...
- 刚接触Linux,菜鸟必备的小知识点(一)
身为一个将要大四的学生,而且还是学计算机的没有接触过linux简直是羞愧难当.这个假期做了一个软件测试员,必须要熟悉linux的操作,所以对于我这个菜鸟我也就说几点比较重要的小知识点吧. 第一.cd指 ...
- Java学习过程中的总结的小知识点(长期更新)
Java学习过程中的总结的小知识点 (主要是自己不会的知识和容易搞错的东西) 计算某个程序运行的时间 long stime=System.currentTimeMillis(); copy3(file ...
- 【转】HTML5的小知识点小集合
html5的小知识点小集合 html5知识 1. Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于<h ...
- AngularJS的小知识点
小知识点:$scope和$rootScope (1)每次使用ngController指令,都会调用控制器的创建函数,创建出一个控制器对象. (2)每次创建一个控制器对象,AngularJS都会创建一个 ...
- js中关于value的一个小知识点(value既是属性也是变量)
今天在学习input的value值时,发现这么一个小知识点,以前理解不太透彻. [1]以下这种情况是常见情况,会弹出“测试内容” <input type="button" v ...
- html5的小知识点小集合
html5的小知识点小集合 html5知识 1. Doctype作用?标准模式与兼容模式各有什么区别? (1).<!DOCTYPE>声明位于位于HTML文档中的第一行,处于< ...
随机推荐
- javascrit原生实现jquery的append()函数
/** * javascrit原生实现jquery的append()函数 * @param parent * @param text */ function append(parent, text) ...
- HTML DOM Event 对象
var event;if (document.createEvent){event = document.createEvent("HTMLEvents");event.initE ...
- SAP 订单状态跟踪
*&--------------------------------------------------------------------- *& Program name: *& ...
- struts2笔记(3)
关于回显: 如果是int型,默认就会回显为0,如果不想让回显,则Integer就好 //**************************************声明式验证************* ...
- javaSE基础06
javaSE基础06 一.匿名对象 没有名字的对象,叫做匿名对象. 1.2匿名对象的使用注意点: 1.我们一般不会用匿名对象给属性赋值的,无法获取属性值(现阶段只能设置和拿到一个属性值.只能调用一次方 ...
- iOS_直播类app_HTTP Live Streaming
http://www.2cto.com/kf/201606/513980.html https://developer.apple.com/library/ios/technotes/tn2224/_ ...
- 破解myEclipse
建立一个java项目,将reg.java放入,并且运行在控制台 输入账户 回车就会出现 序列号 菜单栏--->myeclipse-->substription information--- ...
- [Android Pro] http://blog.csdn.net/wuyinlei/article/category/5773375
http://blog.csdn.net/wuyinlei/article/category/5773375
- mvc架构
mvc是三个单词的缩写,他们是Model(模型),view(视图),controller(控制) 1)最上面的一层,是直接面向最终用户的"视图层"(View).它是提供给用户的操作 ...
- CentOS下yum安装LAMP
1. 用yum安装Apache,Mysql,PHP. 1.1安装Apache yum install httpd httpd-devel 安装完成后,用/etc/init.d/httpd start ...