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 相关文章推荐
移动Web—CSS为Retina屏幕替换更高质量的图片
Dec 24 HTML / CSS
CSS3 制作绽放的莲花采用效果叠加实现
Jan 31 HTML / CSS
使用css3和jquery实现可伸缩搜索框
Feb 12 HTML / CSS
详解CSS3选择器:nth-child和:nth-of-type之间的差异
Sep 18 HTML / CSS
CSS3改变浏览器滚动条样式
Jan 04 HTML / CSS
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
Feb 24 HTML / CSS
详解rem 适配布局
Oct 31 HTML / CSS
HTML5 Canvas标签使用收录
Jul 07 HTML / CSS
HTML5轻松实现全屏视频背景的示例
Apr 23 HTML / CSS
canvas学习和滤镜实现代码
Aug 22 HTML / CSS
css3实现背景图片颜色修改的多种方式
Apr 13 HTML / CSS
详解使用 CSS prefers-* 规范提升网站的可访问性与健壮性
May 25 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
PHP中的正规表达式(二)
2006/10/09 PHP
PHP数据分析引擎计算余弦相似度算法示例
2017/08/08 PHP
PHP实现的简单对称加密与解密方法实例小结
2017/08/28 PHP
php菜单/评论数据递归分级算法的实现方法
2019/08/01 PHP
PHP Redis扩展无法加载的问题解决方法
2019/08/22 PHP
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
2021/03/09 Servers
JavaScript 大数据相加的问题
2011/08/03 Javascript
JS判断元素为数字的奇异写法分享
2012/08/01 Javascript
jQuery获取页面元素绝对与相对位置的方法
2015/06/10 Javascript
jquery $.trim()去除字符串空格的实现方法【附图例】
2016/03/30 Javascript
javaScript中的原型解析【推荐】
2016/05/05 Javascript
原生js验证简洁注册登录页面
2016/12/17 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
JS表格组件神器bootstrap table使用指南详解
2017/04/12 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
JS实现十字坐标跟随鼠标效果
2017/12/25 Javascript
详解如何实现一个简单的 vuex
2018/02/10 Javascript
解决Layui选择全部,换页checkbox复选框重新勾选的问题方法
2018/08/14 Javascript
js实现弹出框的拖拽效果实例代码详解
2019/04/16 Javascript
Vue 自定义指令功能完整实例
2019/09/17 Javascript
Python字符串格式化%s%d%f详解
2018/02/02 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
python 调用钉钉机器人的方法
2019/02/20 Python
python实现AES和RSA加解密的方法
2019/03/28 Python
使用PyTorch将文件夹下的图片分为训练集和验证集实例
2020/01/08 Python
Python 安装 virturalenv 虚拟环境的教程详解
2020/02/21 Python
python实现贪吃蛇游戏源码
2020/03/21 Python
全网首秀之Pycharm十大实用技巧(推荐)
2020/04/27 Python
卡塔尔航空官方网站:Qatar Airways
2017/02/08 全球购物
美国山地自行车、露营、户外装备和服装购物网站:Aventuron
2018/05/05 全球购物
枚举与#define宏的区别
2014/04/30 面试题
一组SQL面试题
2016/02/15 面试题
十佳青年个人事迹材料
2014/01/28 职场文书
大二学生职业生涯规划书
2014/02/05 职场文书
信息专业毕业生五年职业规划参考
2014/02/06 职场文书
Navicat Premium自定义 sql 标签的创建方式
2022/09/23 数据库