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实现超立体3D图片侧翻倾斜效果
Apr 16 HTML / CSS
纯css3制作网站后台管理面板
Dec 30 HTML / CSS
CSS3中线性颜色渐变的一些实现方法
Jul 14 HTML / CSS
CSS3区域模块region相关编写示例
Aug 28 HTML / CSS
纯CSS3打造属于自己的“小黄人”
Mar 14 HTML / CSS
CSS3中的@keyframes关键帧动画的选择器绑定
Jun 13 HTML / CSS
CSS3打造磨砂玻璃背景效果
Sep 28 HTML / CSS
css3遮罩层镂空效果的多种实现方法
May 11 HTML / CSS
HTML5仿手机微信聊天界面
Mar 18 HTML / CSS
HTML5是否真的可以取代Flash
Feb 10 HTML / CSS
开发人员所需要知道的HTML5性能分析面面观
Jul 05 HTML / CSS
使用HTML5技术开发一个属于自己的超酷颜色选择器
Sep 22 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
ThinkPHP与PHPExcel冲突解决方法
2011/08/08 PHP
PHP call_user_func和call_user_func_array函数的简单理解与应用分析
2019/11/25 PHP
解析Jquery取得iframe中元素的几种方法
2013/07/04 Javascript
jQuery针对各类元素操作基础教程
2014/08/29 Javascript
JS判断网页广告是否被浏览器拦截过滤的代码
2015/04/05 Javascript
全面解析Bootstrap表单使用方法(表单控件)
2015/11/24 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
javascript的BOM
2016/05/03 Javascript
Angular实现的table表格排序功能完整示例
2017/12/22 Javascript
webpack开发环境和生产环境的深入理解
2018/11/08 Javascript
JS无限级导航菜单实现方法
2019/01/05 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
vue实现分页栏效果
2019/06/28 Javascript
对layui中table组件工具栏的使用详解
2019/09/19 Javascript
vue data变量相互赋值后被实时同步的解决步骤
2020/08/05 Javascript
使用JavaScript实现贪吃蛇游戏
2020/09/29 Javascript
[22:20]初生之犊-TI4第5名LGD战队纪录片
2014/08/13 DOTA
利用Python爬虫给孩子起个好名字
2017/02/14 Python
Python进阶之递归函数的用法及其示例
2018/01/31 Python
Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法
2018/04/22 Python
pandas取出重复数据的方法
2019/07/04 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
详解python环境安装selenium和手动下载安装selenium的方法
2020/03/17 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
Microsoft新加坡官方网站:购买微软最新软件和技术产品
2016/10/28 全球购物
KIKO美国官网:意大利的平价彩妆品牌
2017/05/16 全球购物
工商管理系学生的自我评价分享
2013/11/29 职场文书
和平主题的演讲稿
2014/01/12 职场文书
保护水资源的标语
2014/06/17 职场文书
党员个人整改方案及措施
2014/10/25 职场文书
2014年学生会工作总结
2014/11/07 职场文书
志愿者个人总结
2015/03/03 职场文书
2016年小学生寒假家长评语
2015/10/10 职场文书
HTML+css盒子模型案例(圆,半圆等)“border-radius” 简单易上手
2021/05/10 HTML / CSS
nginx部署多前端项目的几种方法
2021/05/25 Servers
Nginx安装配置详解
2022/06/25 Servers