hjzheng / CUF_meeting_knowledge_share

Record CUF team meeting knowledge share
121 stars 49 forks source link

2014-9-11 CSS3 2D Transform | BlueMix Case Study | chrome dev tools mobile-emulation | Google Material Design #7

Open hjzheng opened 10 years ago

hjzheng commented 10 years ago

CSS3 2D transform (Hao Ju Zheng)

2D transform

通过 CSS3 2D转换, 我们能够对元素进行移动、缩放、转动、拉长或拉伸。

浏览器支持 IE9,IE10,Chrome,FireFox

学习资料 W3Cschool Transform教程 Example1 Example2

Transform 常用变换函数

函数 描述
matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。
translate(x,y) 定义 2D 转换,沿着 X 和 Y 轴移动元素。
translateX(n) 定义 2D 转换,沿着 X 轴移动元素。
translateY(n) 定义 2D 转换,沿着 Y 轴移动元素。
scale(x,y) 定义 2D 缩放转换,改变元素的宽度和高度。
scaleX(n) 定义 2D 缩放转换,改变元素的宽度。
scaleY(n) 定义 2D 缩放转换,改变元素的高度。
rotate(angle) 定义 2D 旋转,在参数中规定角度。
skew(x-angle,y-angle) 定义 2D 倾斜转换,沿着 X 和 Y 轴。
skewX(angle) 定义 2D 倾斜转换,沿着 X 轴。
skewY(angle) 定义 2D 倾斜转换,沿着 Y 轴。

如何兼容IE8,7,6 http://www.useragentman.com/IETransformsTranslator/

扩展知识 2D矩阵变换原理

标准浏览器:matrix(1,0,0,1,0,0)
            matrix(a,b,c,d,e,f)

IE8,7,6:   progid:DXImageTransform.Microsoft.Matrix(
            M11=1, M12=0,M21=0,M22=1,SizingMethod='auto expand');
            M11 == a
            M12 == c
            M21 == b
            M22 == d
x位移: e = e + disX 
y位移:f = f + disY
x轴缩放: a = x*a; c=x*c;  e=x*e
y轴缩放: b = y*b; d=y*d;  f=y*f
c = Math.tan(xDeg/180*Math.PI)
b = Math.tan(yDeg/180*Math.PI)
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);

矩阵函数的使用Example

CSS3 2D Transform PPT

BlueMix Case Study (Hao Zhang)

hjzheng commented 10 years ago

you can get CSS3 2D Transform PPT from https://github.com/hjzheng/CUF_PPTs

hjzheng commented 10 years ago

chrome dev tools new function mobile-emulation: (Hao Ju Zheng)

https://developers.google.com/chrome-developer-tools/docs/mobile-emulation dev_tools

hjzheng commented 10 years ago

Google Material Design (Hao Zhang)

http://design.1sters.com/