你需要知道的CSS3 动画技术[译](6)

作者:神采飞扬 来源:前端观察 时间:2009-12-30 17:02:00 

transform-origin

transform-origin不是transform的一个子功能,但是和transform关系非常密切。它可以用来指定transform的起点,比如,rotate变形的默认起点是其中间,你可以将起点设置在左上角,或者左下角,这样rotate变形的结果就可能大不相同了。

transform-origin接受两个参数,它们可以是百分比,em,px等具体的值,也可以是left,center,right,或者 top,middle,bottom等描述性参数。几个例子:

.class1{-moz-transform-origin: 0 0;
-webkit-transform-origin: 0 0;
-o-transform-origin: 0 0;
...
}
.class2{-moz-transform-origin:100% 100%;
-webkit-transform-origin:100% 100%;
-o-transform-origin:100% 100%;
...}
.class3{-moz-transform-origin:top left;
-webkit-transform-origin:top left;
-o-transform-origin:top left;
...} 

浏览器兼容性

该属性目前也只有webkit、firefox和Opera 10.5支持,而且需要添加各自的私有前缀。

transition(转换)

一个涉及到CSS属性的基本的转换就是定义和移动一个元素从它的静止状态(比如,深蓝色背景)到它的hover或者激活状态(比如,浅蓝色背景)。

转换可以和变形同时使用(以及引发诸如:hover 或:focus事件)以创建一些动画。淡出背景色彩,滑动一个元素以及让一个对象旋转都可以通过CSS转换实现。

#nav a{ background-color:red; }
 #nav a:hover, #nav a:focus{
  background-color:blue;
  /* 告诉转换去应用到background-color 属性(看起来像一个CSS 参数,不是吗? #foreshadowing)*/
  -webkit-transition-property:background-color;
  -o-transition-property:background-color;
  /* 让它持续两秒钟*/
  -webkit-transition-duration:2s;
  -o-transition-duration:2s;
}

转换的一些参数

  • transition-property

    指定转换的CSS属性名称,比如,上面的例子中,将转换应用于background-color属性。

  • transition-duration

    定义转换花费的时间(从旧属性换到新属性花费的时间)

  • transition-timing-function

    可以理解为过度效果。指定转换过程中的中间值。可以用cubic-bezier指定。当然有几个常用的内置值:ease | linear | ease-in | ease-out | ease-in-out

  • transition-delay

    这个比较容易理解,就是转换延迟的时间。时间可以为正整数、负整数和零,非零的时候必须设置单位是s(秒)或者ms(毫秒),为负数的时候,转换的动作会从该时间点开始显示,之前的动作被截断。

注:参数部分为前端观察翻译时添加,原文中没有。

浏览器支持

像transform属性一样酷,但是目前只有WebKit浏览器支持。Opera 10.5 pre版本也可以通过添加-o-前缀来支持。-moz-transition已经在最近的nightly-build版本的Firefox 3.7中可用。你也可以添加-moz-transition到你的CSS中以实现将来的增强。甚至可以添加一个不用私有前缀的属性,以防万一。

标签:CSS3,动画,设计师
0
投稿

猜你喜欢

  • selenium+headless chrome爬虫的实现示例

    2022-01-31 19:29:50
  • MySQL数据库入门之备份数据库操作详解

    2024-01-24 07:10:05
  • pytorch下的unsqueeze和squeeze的用法说明

    2023-07-16 14:01:41
  • Python依赖包整体迁移方法详解

    2022-11-03 05:32:55
  • 完美解决phpstudy安装后mysql无法启动(无需删除原数据库,无需更改任何配置,无需更改端口)直接共存

    2023-11-14 17:39:47
  • DHTML+XML+ASP+CSS的树形目录

    2008-10-24 14:29:00
  • pytorch 常用函数 max ,eq说明

    2023-06-25 11:09:21
  • Keras中的两种模型:Sequential和Model用法

    2021-10-16 07:04:32
  • Vue 实现轮播图功能的示例代码

    2024-05-11 09:14:15
  • Pytorch 如何训练网络时调整学习率

    2022-01-31 20:08:48
  • CentOS下安装python3.5+scrapy的方法步骤

    2022-07-17 20:01:42
  • pygame实现键盘的连续监控

    2023-09-26 11:17:10
  • 通过Javascript将数据导出到外部Excel文档的函数代码

    2024-04-22 22:32:00
  • python3中pip3安装出错,找不到SSL的解决方式

    2022-02-15 23:33:17
  • Python 自动控制原理 control的详细解说

    2023-04-17 09:53:45
  • python中对%、~含义的解释

    2021-07-08 01:18:54
  • python实现网络五子棋

    2021-10-16 23:58:17
  • python中二分查找法的实现方法

    2023-02-02 16:19:16
  • 教你学会使用Python正则表达式

    2023-01-17 14:08:56
  • python列表推导和生成器表达式知识点总结

    2021-09-13 00:13:42
  • asp之家 网络编程 m.aspxhome.com