从零开始学习前端开发 — 14、CSS3变形基础
一、css3变形:
transform:rotate(旋转)|scale(缩放)|skew(倾斜)|translate(位移);
注:当多种变形方式综合在一起时,用空格隔开
1.旋转
a) rotateX(180deg) 沿x轴翻转 等价于 rotate3d(1,0,0,180deg)
b) rotateY(180deg) 沿y轴翻转 等价于 rotate3d(0,1,0,180deg)
c) rotate(60deg) 2d空间的旋转,正值为顺时针,负值为逆时针
d) rotateZ(180deg) 沿z轴翻转 等价于 rotate3d(0,0,1,180deg)
注:旋转单位为deg
2.缩放
a) scaleX(1.5) 沿x轴缩放,默认为1,不放大不缩小,值大于1时放大,小于1时缩小
b) scaleY(0.5) 沿y轴缩放
c) scale(1.5) 沿x轴和y轴同时缩放
d) scaleZ(1.5) 沿z轴缩放
3.倾斜
a) skewX(30deg) 沿x轴倾斜,单位为deg
b) skewY(-30deg) 沿y轴倾斜
c) skew(30deg,15deg) 沿x轴和y轴同时倾斜
skewX(30deg) skewY(15deg) x轴和y轴同时倾斜,效果不同于上面的写法
4.位移
a) translateX(200px) 沿x轴位移,向右为正,向左为负
b) translateY(-200px) 沿y轴位移,向上为负,向下为正
c) translate(100px) 默认不指定轴时,沿x轴位移
translate(100px,100px) 沿x轴和y轴同时位移
等价于
translateX(100px) translateY(100px)
d) translateZ(100px) 沿z轴位移,向前为正,向后为负,设置沿z轴的位移时,需要给父元素添加透视
注:如何使用translate实现不定宽高元素在屏幕窗口或父元素中水平垂直都居中
实现方式如下:
元素{
position:fixed|absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
}
二、改变变形中心点位置
transform-origin:left|center|right top|center|bottom;
三、变形综合
当我们将多种变形方式结合在一起时,改变顺序,效果有可能会不同
eg: transform:rotate(360deg) scale(1.5); 调换顺序,效果一样
transform:translateX(500px) rotate(360deg); 调换顺序,效果不一样
四、设置元素在2d空间变形还是3d空间变形
语法: transform-style:flat(默认值)|preserve-3d;
flat 2d变形
preserve-3d 3d空间的变形
五、透视,井深
描述:用来设置观察者距离物体的距离(3d效果的强度)
语法:
父元素{perspective:数值+单位;}
子元素{transform:perspective(300px) rotateY(45deg);}
从零开始学习前端开发 — 14、CSS3变形基础的更多相关文章
- 从零开始学习前端开发 — 2、CSS基础
一.CSS简介 1.CSS是什么 CSS是Cascading Style Sheets的简称,中文称为层叠样式表.特点:实现了表现与结构相分离 2.css基础语法 css是由选择符和声明两大部分组成 ...
- 从零开始学习前端开发 — 1、HTML基础
一.web标准 web标准-网页制作的标准,它是由一系列标准组成的,主要包含三个方面:结构(html,xhtml),表现(css),行为(javascript) 注:结构和表现的标准由w3c(万维网联 ...
- 从零开始学习前端开发 — 17、CSS3背景与渐变
一.css3背景切割: background-clip:border-box|padding-box|content-box; 作用: 用来设置背景的可见区域 a) border-box 默认值,背景 ...
- 从零开始学习前端开发 — 15、CSS3过渡、动画
一.css3过渡 语法: transition: 过渡属性 过渡时间 延迟时间 过渡方式; 1.过渡属性(transition-property) 取值:all 所有发生变化的css属性都添加过渡 e ...
- 从零开始学习前端开发 — 11、CSS3选择器
一.基本选择器 1.* 通配符(通用选择器) 2.id选择器 3.class选择器(类选择器) 4.标签选择器(元素选择符) 5.群组选择器 (选择符1,选择符2{...}) 二.层次选择器(关系选择 ...
- 从零开始学习前端开发 — 16、CSS3圆角与阴影
一.css3圆角: border-radius:数值+单位; 1.设置一个值:border-radius:20px; 四个方向圆角都为20px(水平半径和垂直半径相等) 2.设置两个值 border- ...
- 从零开始学习前端开发 — 12、CSS3弹性布局
一.分栏布局 1.设置栏数column-count:数值; 2.设置每栏的宽度column-width:数值+单位; 注:当设置了column-width,column-count会失效,二者设置其一 ...
- 从零开始学习前端JAVASCRIPT — 1、JavaScript基础
1:定义:javascript是一种弱类型.动态类型.解释型的脚本语言. 弱类型:类型检查不严格,偏向于容忍隐式类型转换. 强类型:类型检查严格,偏向于不容忍隐式类型转换. 动态类型:运行的时候执行类 ...
- 从零开始学习前端JAVASCRIPT — 4、JavaScript基础Math和Date对象的介绍
Math对象的介绍 1:Math对象 Math 对象用于执行数学任务.并不像 Date 和 String 那样是对象的类,因此没有构造函数 Math().您无需创建它,通过把 Math 作为对象使用就 ...
随机推荐
- sourcetree跳过注册的方法
当前只有Win的版本,Mac自行百度(笑) 很多人用git命令行不熟练,那么可以尝试使用sourcetree进行操作. 然鹅~~sourcetree又一个比较严肃的问题就是,很多人不会跳过注册或者操作 ...
- Navicat for MySQL定时备份数据库及数据恢复
在做数据库修改或删除操作中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库.本篇文章主要讲述Navicat for MySQL定时备份数据库和数据恢复等功能,同时可以定时播放电 ...
- jquery append 动态添加的元素绑定事件on
用jquery添加新元素很容易,面对jquery append 动态添加的元素事件on 不起作用我们该如何解决呢?on方法中要先找到原选择器(如例.info),再找到动态添加的选择器(如列.delet ...
- DJango_生命周期
在django中,当我们访问一个url时,会通过路由匹配进入到响应的html页面中. Django的生命周期,指的就是当用户在浏览器上输入url,到用户看到整个页面之前,django后台都做了哪些事情 ...
- Adb+.net 实现微信跳一跳自动化
第一次用adb,一开始只是想试试看能不能解析出,没有看网上的现有解析方式. 需要安卓机开启usb 调试+电脑运行.打开跳一跳的界面 点击程序 [开始]按钮即可开始,别的按钮都是调试用的 主要流程是用a ...
- 微信小程序开发之选项卡
选项卡是web开发中经常使用到的一个模块,在小程序中竟然没有,这里参考别人的文章自己做了一个双选项卡 实现思路: 通过绑定swichNav事件来控制currentTab(当前选项卡)和isShow(是 ...
- HashMap与ConcurrentHashMap
从JDK1.2起,就有了HashMap,正如前一篇文章所说,HashMap不是线程安全的,因此多线程操作时需要格外小心. 在JDK1.5中,伟大的Doug Lea给我们带来了concurrent包,从 ...
- 转:java 可设置最大内存
测试方法:在命令行下用 java -XmxXXXXM -version ,比如:java -Xmx1024M -version命令来进行测试,然后逐渐的增大XXXX的值,如果执行正常就表示指定的内存大 ...
- springboot 注册服务注册中心(zk)的两种方式
在使用springboot进行开发的过程中,我们经常需要处理这样的场景:在服务启动的时候,需要向服务注册中心(例如zk)注册服务状态,以便当服务状态改变的时候,可以故障摘除和负载均衡. 我遇到过两种注 ...
- linux下vsftpd的安装及配置使用详细步骤
vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BS ...