css3 矩阵的使用详解


Posted in HTML / CSS onMarch 20, 2018

css3 矩阵变化. 应用格式为:

transform: matrix(a,b,c,d,e,f);

对应于就是:

css3 矩阵的使用详解

实际应用中的转换就是:

css3 矩阵的使用详解

其中:

ax+cy+e = 横坐标

bx+dy+f = 纵坐标

为什么会多出 0 0 1呢? 因为, 为了凑参数.

translate 矩阵

基本格式为:

transform: matrix(1, 0, 0, 1, X, Y); // X 横向平移, Y 纵向平移

scale 矩阵

scale(缩放) 的矩阵也挺简单.

// 将 X 轴缩放 A 倍
// 将 Y 轴缩放 B 倍
matrix(A, 0, 0, B, 0,0);

当然, 如果你在最后两位写上数字, 代表着, 先缩放再平移.

// 得到: X 轴 = 0.3*x + 100
// 得到: Y 轴 = 0.2*x + 200
matrix(0.3,0,0,0.2,100,200);

rotate 矩阵

rotate 实际上和三角函数有很大的关系. 首先,确定你的旋转角(顺时针旋转). 然后, 计算 sinθ 和 cosθ. 最后的矩阵公式为:

matrix(cosθ,sinθ,-sinθ,cosθ,0,0) // 就是 cs-sc

skew 矩阵

skew(拉伸) 矩阵也是三角函数, 不过, 用到的是tanθ. 格式为:

// 将 Y 轴向 X 轴倾斜 A°
// 将 X 轴向 Y 轴倾斜 B°
matrix(1,tan(A),tan(B),1,0,0)

3D变换矩阵

3D 变换是 4*4 的矩阵. 他和 2D 类似,只是, 多出一个Z。 // 这是缩放的3D矩阵

css3 矩阵的使用详解 

对应的 css 写法为:

transform: matrix3d(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

HTML / CSS 相关文章推荐
CSS3 Media Queries详细介绍和使用实例
May 08 HTML / CSS
使用css3做0.5px的细线的示例代码
Jan 18 HTML / CSS
CSS3 文字动画效果
Nov 12 HTML / CSS
canvas实现俄罗斯方块的方法示例
Dec 13 HTML / CSS
你可能不熟练的十个前端HTML5经典面试题
Jul 03 HTML / CSS
HTML5 实战PHP之Web页面表单设计
Oct 09 HTML / CSS
基于html5 DeviceOrientation 实现微信摇一摇功能
Sep 25 HTML / CSS
HTML5新增加的功能详解
Sep 05 HTML / CSS
使用phonegap查找联系人的实现方法
Mar 31 HTML / CSS
html2canvas生成清晰的图片实现打印的示例代码
Sep 30 HTML / CSS
使用canvas压缩图片上传的方法示例
Feb 07 HTML / CSS
CSS实现九宫格布局(自适应)的示例代码
Feb 12 HTML / CSS
CSS3 :default伪类选择器使用简介
Mar 15 #HTML / CSS
css3编写浏览器背景渐变背景色的方法
Mar 05 #HTML / CSS
CSS3下的渐变文字效果实现示例
Mar 02 #HTML / CSS
CSS3 @keyframes简单动画实现
Feb 24 #HTML / CSS
css3 实现圆形旋转倒计时
Feb 24 #HTML / CSS
css3 仿写阿里云水纹效果的示例代码
Feb 10 #HTML / CSS
纯css3使用vw和vh实现自适应的方法
Feb 09 #HTML / CSS
You might like
获得Google PR值的PHP代码
2007/01/28 PHP
php实现的遍历文件夹下所有文件,编辑删除
2010/01/05 PHP
php 文件缓存函数
2011/10/08 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
javascript 变量作用域 代码分析
2009/06/26 Javascript
小议Javascript中的this指针
2010/03/18 Javascript
jQuery EasyUI API 中文文档 - Parser 解析器
2011/09/29 Javascript
如何创建一个JavaScript弹出DIV窗口层的效果
2013/09/25 Javascript
谈一谈javascript闭包
2016/01/28 Javascript
javascript实现label标签跳出循环操作
2016/03/06 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
利用fecha进行JS日期处理
2016/11/21 Javascript
详解Angular的内置过滤器和自定义过滤器【推荐】
2016/12/26 Javascript
Vue结合后台导入导出Excel问题详解
2019/02/19 Javascript
javascript触发模拟鼠标点击事件
2019/06/26 Javascript
javascript实现导航栏分页效果
2019/06/27 Javascript
使用layer模态框给新页面传值的方法
2019/09/27 Javascript
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
探索浏览器页面关闭window.close()的使用详解
2020/08/21 Javascript
JS实现斐波那契数列的五种方式(小结)
2020/09/09 Javascript
Selenium执行JavaScript脚本的方法示例
2020/12/31 Javascript
Javascript实现打鼓效果
2021/01/29 Javascript
Python2.5/2.6实用教程 入门基础篇
2009/11/29 Python
python持久性管理pickle模块详细介绍
2015/02/18 Python
python脚本设置超时机制系统时间的方法
2016/02/21 Python
python实现装饰器、描述符
2018/02/28 Python
Python爬虫文件下载图文教程
2018/12/23 Python
Python实现 PS 图像调整中的亮度调整
2019/06/28 Python
python gui开发——制作抖音无水印视频下载工具(附源码)
2021/02/07 Python
手把手教你用纯css3实现轮播图效果实例
2017/05/04 HTML / CSS
函数指针的定义是什么
2016/08/14 面试题
《跨越海峡的生命桥》教学反思
2014/02/24 职场文书
乐观自信演讲稿范文
2014/05/21 职场文书
幼儿园见习报告范文
2014/10/30 职场文书
运动员入场前导词
2015/07/20 职场文书
Go 语言结构实例分析
2021/07/04 Golang