0

0

关于CSS3元素2D平面变换属性transform的实现方法

黄舟

黄舟

发布时间:2017-05-21 15:44:47

|

1918人浏览过

|

来源于php中文网

原创

CSS3的形状变换允许我们对元素拉伸、缩放等等 

这篇我主要谈下一2d平面变换
属性transform可以进行变换
transform就是变形的意思
并且它主要通过函数来使用,有以下函数

transform-origin则时定义变换的中心

平移变换translate

translate()两个参数,第一个是x轴相对位移,第二个参数是y轴相对位移

.demo {    ......
    transform: translate(100px, 200px);  <--
}

或者translate()可以拆成translateX()和translateY()
(小写形式translatex/y也可以)

.demo {    ......
    transform: translateX(100px) translateY(200px); /*改*/}

两者是等价的,不过很麻烦
结果是元素向右平移了100px,向下平移了200px

旋转变换rotate

rotate()一个参数,表示旋转角度的‘xxdeg’,
正数顺时针旋转,允许负值

.demo {    ......
    transform: rotate(30deg);}

结果是元素顺势针旋转了30°
不过元素默认的旋转中心是元素中心
修改变换中心可以用我们的transform-origin属性
比如说我们想要让元素沿着左上顶点旋转

LongShot
LongShot

LongShot 是一款 AI 写作助手,可帮助您生成针对搜索引擎优化的内容博客。

下载
.demo {    ......
    transform: rotate(30deg);    transform-origin: 0 0; /*增*/}

transform-origin的三个参数是  x轴距离(x-axis),y轴距离(y-axis),z轴距离(z-axis)
默认的形式就是transform-origin: 50% 50% 0;
x-axis可选值除了长度和百分比,还有left、center、right
y-axis可选值除了长度和百分比,还有top、center、bottom
z-axis可选值只有长度值,在2D变换中我们暂时用不到它

缩放变换scale

缩放元素就是改变元素的尺寸
两个参数,宽度与高度缩放的倍率(无单位)
同样可以拆成scaleX()与scaleY()

.demo {    ......
    transform: scale(2,2);}

这样就是把元素宽度扩大一倍,高度扩大二倍
注意这是真正意义的缩放
意思就是,如果你的元素中有文字会产生拉伸的效果
等价形式如下

.demo {    ......
    transform: scaleX(2) scaleY(3); /*改*/}

可以通过transform-origin修改变换中心

倾斜变换skew

skew就是倾斜扭曲的意思
这个函数会让你的元素线性扭曲
两个参数,x轴与y轴的扭曲角度,同样是xxdeg的形式

.demo {    ......
    transform: skew(10deg,20deg);}

等价

.demo {    ......
    transform: skewX(10deg) skewY(20deg); /*改*/}

同样可以通过transform-origin修改变换中心,不再赘述

矩阵变换matrix

听起来超级NB,实际上呢
真的是超级NB
矩阵变换用的比较少,它是上面所有变换的基础
我懂得也不是很深
作为一个数学系的学生,确实惭愧T^T
matrix变换有6个参数,可以控制元素的旋转、平移、倾斜和缩放
比如下面的代码把元素旋转了30°,x、y轴各平移20px

.demo {    ......
    transform: matrix(0.866,0.5,-0.5,0.866,20,20);}

如果对数学有兴趣的同学,我推荐张鑫旭大神的文章传送门
没准以后我心血来潮也写一篇矩阵的文章……


今天要讲的东西比较简单就不放图了
3D变换相关属性 –>传送门

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
java入门学习合集
java入门学习合集

本专题整合了java入门学习指南、初学者项目实战、入门到精通等等内容,阅读专题下面的文章了解更多详细学习方法。

2

2026.01.29

java配置环境变量教程合集
java配置环境变量教程合集

本专题整合了java配置环境变量设置、步骤、安装jdk、避免冲突等等相关内容,阅读专题下面的文章了解更多详细操作。

2

2026.01.29

java成品学习网站推荐大全
java成品学习网站推荐大全

本专题整合了java成品网站、在线成品网站源码、源码入口等等相关内容,阅读专题下面的文章了解更多详细推荐内容。

0

2026.01.29

Java字符串处理使用教程合集
Java字符串处理使用教程合集

本专题整合了Java字符串截取、处理、使用、实战等等教程内容,阅读专题下面的文章了解详细操作教程。

0

2026.01.29

Java空对象相关教程合集
Java空对象相关教程合集

本专题整合了Java空对象相关教程,阅读专题下面的文章了解更多详细内容。

3

2026.01.29

clawdbot ai使用教程 保姆级clawdbot部署安装手册
clawdbot ai使用教程 保姆级clawdbot部署安装手册

Clawdbot是一个“有灵魂”的AI助手,可以帮用户清空收件箱、发送电子邮件、管理日历、办理航班值机等等,并且可以接入用户常用的任何聊天APP,所有的操作均可通过WhatsApp、Telegram等平台完成,用户只需通过对话,就能操控设备自动执行各类任务。

25

2026.01.29

clawdbot龙虾机器人官网入口 clawdbot ai官方网站地址
clawdbot龙虾机器人官网入口 clawdbot ai官方网站地址

clawdbot龙虾机器人官网入口:https://clawd.bot/,clawdbot ai是一个“有灵魂”的AI助手,可以帮用户清空收件箱、发送电子邮件、管理日历、办理航班值机等等,并且可以接入用户常用的任何聊天APP,所有的操作均可通过WhatsApp、Telegram等平台完成,用户只需通过对话,就能操控设备自动执行各类任务。

16

2026.01.29

Golang 网络安全与加密实战
Golang 网络安全与加密实战

本专题系统讲解 Golang 在网络安全与加密技术中的应用,包括对称加密与非对称加密(AES、RSA)、哈希与数字签名、JWT身份认证、SSL/TLS 安全通信、常见网络攻击防范(如SQL注入、XSS、CSRF)及其防护措施。通过实战案例,帮助学习者掌握 如何使用 Go 语言保障网络通信的安全性,保护用户数据与隐私。

8

2026.01.29

俄罗斯Yandex引擎入口
俄罗斯Yandex引擎入口

2026年俄罗斯Yandex搜索引擎最新入口汇总,涵盖免登录、多语言支持、无广告视频播放及本地化服务等核心功能。阅读专题下面的文章了解更多详细内容。

622

2026.01.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
CSS3 教程
CSS3 教程

共18课时 | 5万人学习

HTML5/CSS3/JavaScript/ES6入门课程
HTML5/CSS3/JavaScript/ES6入门课程

共102课时 | 6.8万人学习

HTML+CSS基础与实战
HTML+CSS基础与实战

共132课时 | 9.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号