CSS3 Animation 基于 less 构建的 css3 动画库
LESS动画优点
· 快速开发css3动画
· 采用less mixins写法,不会生成冗余css
· 已加入主流浏览器前缀,保证最大兼容性
· LESS-Animation 部分mixins支持传参,自定义动画幅度
(PS:sublime的less2css插件可能不支持编译本库的一些新写法,建议使用官方less编译、考拉、前端构建工具等方式编译。交流群:145423956)
使用方法
本less文件主要包含两个功能:LESS-Prefixer和LESS-Animation。
· 下载 _animation.less 文件,git地址:
git@github.com:w3cmark/css3.git
· 在主less文件引入_animation.less
@import "_animation.less";
LESS-Prefixer
LESS-Prefixer是一组LESS mixins,可以让你在写css3时,去掉书写各个浏览器的前缀,简化代码书写。
如何使用
· 假如你写css3的transition:
div{
-webkit-transition:all 0.2s ease-out;
-o-transition:all 0.2s ease-out;
-ms-transition:all 0.2s ease-out;
-moz-transition:all 0.2s ease-out;
transition:all 0.2s ease-out;
}
· 引入 _animation.less 后的写法:
div{
.transition(all 0.2s ease-out);
}
支持的属性
.transition(@arg)
.transition-delay(@delay)
.transition-duration(@duration)
.transition-property(@property)
.transition-timing-function(@function)
.transition-delay(@delay)
.transition-delay(@delay)
.transform(@arg)
.transform-origin(@args)
.transform-style(@style)
.rotate(@deg)
.scale(@factor)
.translate(@x,@y)
.translate3d(@x,@y,@z)
.translateHardware(@x,@y)
.animation(@arg)
.animation-delay(@delay)
.animation-direction(@direction)
.animation-duration(@duration)
.animation-fill-mode(@mode)
.animation-iteration-count(@count)
.animation-name(@name)
.animation-play-state(@state)
.animation-timing-function(@function)
.flex(@arg)
.flexbox()
.opacity(@number)
.box-shadow(@arg)
.box-sizing(@arg)
.border-color(@arg)
.border-image(@arg)
.border-radius(@arg)
.background-origin(@arg)
.background-clip(@arg)
.background-size(@arg)
.columns(@args)
.column-count(@count)
.column-gap(@gap)
.column-width(@width)
.column-rule(@args)
.gradient(@default, @start, @stop)
.linear-gradient-top(@default,@color1,@stop1,@color2,@stop2)
.linear-gradient-top(@default,@color1,@stop1,@color2,@stop2,@color3,@stop3)
.linear-gradient-top(@default,@color1,@stop1,@color2,@stop2,@color3,@stop3,@color4,@stop4)
.linear-gradient-left(@default,@color1,@stop1,@color2,@stop2)
.linear-gradient-left(@default,@color1,@stop1,@color2,@stop2,@color3,@stop3)
.linear-gradient-left(@default,@color1,@stop1,@color2,@stop2,@color3,@stop3,@color4,@stop4)
LESS-Animation
mixin直接引用
LESS-Animation 是一个基于less,集成一些基础动画的库(所包含的动画可以在上面效果预览),直接调用相应的动画mixins即可。
动画帧名和mixin名一致,方便调用。
· 栗子一:引用 bounce 动画,只需在所在元素节点加入 .bounce();
.bounce{
.bounce();
.animation(bounce 1s ease-in-out);
}
· 栗子二:引用 bounceIn 动画,只需在所在元素节点加入 .bounceIn();
.box{
.bounceIn();
.animation(bounceIn 1s linear infinite);
}
mixin传参引用
ps:
· 新增部分传参功能,可以自定义动画幅度参数,实现同类型动画不同幅度;
· 传参功能不影响原来上面直接引用,参数都可为空,原来的动画幅度已经设为默认值;
具体动画名和参数说明
| 动画名 | 参数说明 | 栗子 |
|---|---|---|
| .bounce(@t; @n) | @t:抖动最小幅度(默认值4px);@n:动画帧名(默认值bounce) | .bounce(5px; bounceA) |
| .pulse(@t; @n) | @t:放大幅度(默认值1.05);@n:动画帧名(默认值pulse) | .pulse(1.5; pulseA) |
| .shake(@x; @n) | @x:抖动最小幅度(默认值10px);@n:动画帧名(默认值shake) | .shake(20px; shakeA) |
| .swing(@d; @n) | @d:旋转最小角度(默认值5deg);@n:动画帧名(默认值swing) | .swing(5deg; swingA) |
| .wobble(@d; @n) | @d:摇摆最小幅度(默认值1deg);@n:动画帧名(默认值wobble) | .wobble(-2deg; wobbleA) |
| .fadeIn(@x; @y; @n) | @x:x轴移动距离(默认值0);@y:y轴移动距离(默认值0);@n:动画帧名(默认值fadeIn) | .fadeIn(-1000px; 0; fadeInA) |
| .fadeOut(@x; @y; @n) | @x:x轴移动距离(默认值0);@y:y轴移动距离(默认值0);@n:动画帧名(默认值fadeOut) | .fadeOut(-1000px; 0; fadeOutA) |
| .turnInDown(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnInDown) | .turnInDown(700px; turnInDownA) |
| .turnInUp(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnInUp) | .turnInUp(700px; turnInUpA) |
| .turnInLeft(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnInLeft) | .turnInLeft(700px; turnInLeftA) |
| .turnInRight(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnInRight) | .turnInRight(700px; turnInRightA) |
| .turnOutDown(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnOutDown) | .turnOutDown(700px; turnOutDownA) |
| .turnOutUp(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnOutUp) | .turnOutUp(700px; turnOutUpA) |
| .turnOutLeft(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnOutLeft) | .turnOutLeft(700px; turnOutLeftA) |
| .turnOutRight(@p; @n) | @p:perspective值,元素距视图的距离(默认值600px);@n:动画帧名(默认值turnOutRight) | .turnOutRight(700px; turnOutRightA) |
更新日志
· 20150110 增加turn Entrances(出现)和turn Exits(消失)系列动画
· 20150120 部分新增动画animation的mixin支持传参
在线预览效果 http://www.w3cmark.com/animation/
CSS3 Animation 基于 less 构建的 css3 动画库的更多相关文章
- 前端笔记之移动端&响应式(上)媒体查询&Bootstrap&动画库&zepto&velocity
一.媒体(介)查询 1.1 基本语法 媒体查询由媒体类型和一个或多个检测媒体特性的条件表达式组成.媒体查询中可用于检测的媒体特性有:width.height和color(等).使用媒体查询可以在不改变 ...
- 原生javascript封装动画库
****转载自自己发表于牛人部落专栏的文章**** 一.前言 本文记录了自己利用原生javascript构建自己的动画库的过程,在不断改进的过程中,实现以下动画效果: 针对同一个dom元素上相继发生的 ...
- 【React自制全家桶】八、React动画以及react-transition-group动画库的使用
React动画通常有三种方法实现从易到难为: 1.transition(CSS3自带) 2.animation(CSS3自带) 3.react-transition-group动画库(需要引入插件) ...
- CSS3 Animation Cheat Sheet:实用的 CSS3 动画库
CSS3 Animation Cheat Sheet 是一组预设的动画库,为您的 Web 项目添加各种很炫的动画.所有你需要做的是添加样式表到你的网站,为你想要添加动画效果的元素应用预制的 CSS 类 ...
- CSS3 animation属性中的steps实现GIF动图(逐帧动画)
相信 animation 大家都用过很多,知道是 CSS3做动画用的.而我自己就只会在 X/Y轴 上做位移旋转,使用 animation-timing-function 规定动画的速度曲线,常用到的 ...
- 实现了一个百度首页的彩蛋——CSS3 Animation简介
在百度搜索中有这样一个彩蛋:搜索“旋转”,“跳跃”,“反转”等词语,会出现相应的动画效果(搜索“反转”后的效果).查看源码可以发现,这些效果正是通过CSS3的animation属性实现的. 实现这个彩 ...
- HTML 学习笔记 CSS3(Animation)
CSS3动画: 通过CSS3 我们能够创建动画 这可以在许多网页中取代动画图片 Flash动画 以及JavaScript. CSS3 @keyframes 规则如需在 CSS3 中创建动画,您需要学习 ...
- css3 animation动画技巧
一,css3 animation动画前言 随着现在浏览器对css3的兼容性越来越好,使用css3动画来制作动画的例子也越来越广泛,也随着而来带来了许多的问题值得我们能思考.css3动画如何让物体运动更 ...
- 第四十一课:CSS3 animation详解
animation是css3的另一个重要的模块,它成型比transition晚,吸取了Flash的关键帧的理念,实用性高. animation是一个复合样式,它可以细分为8个更细的样式. (1)ani ...
随机推荐
- [转]Linux中文件权限目录权限的意义及权限对文件目录的意义
转自:http://www.jb51.net/article/77458.htm linux中目录与文件权限的意义 一.文件权限的意义 r:可以读这个文件的具体内容: w:可以编辑这个文件的内容,包括 ...
- 八皇后问题 --- 递归解法 --- java代码
八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行.纵行或斜线上.八皇后 ...
- 你可能不知道的30个Python语言的特点技巧
1 介绍 从我开始学习Python时我就决定维护一个经常使用的“窍门”列表.不论何时当我看到一段让我觉得“酷,这样也行!”的代码时(在一个例子中.在StackOverflow.在开源码软件中,等等), ...
- SpringMVC + Spring + MyBatis 学习笔记:SpringMVC和Spring一同工作的时候,AOP事务管理不起作用的解决方法
系统:WIN8.1 数据库:Oracle 11GR2 开发工具:MyEclipse 8.6 框架:Spring3.2.9.SpringMVC3.2.9.MyBatis3.2.8 SpringMVC 的 ...
- Redis批量导入数据
首先准备数据文件 格式为 SET Key0 Value0 SET Key1 Value1 ... SET KeyN ValueN 利用shell转换数据 #!/bin/bash while read ...
- Mapreduce执行过程分析(基于Hadoop2.4)——(三)
4.4 Reduce类 4.4.1 Reduce介绍 整完了Map,接下来就是Reduce了.YarnChild.main()—>ReduceTask.run().ReduceTask.run方 ...
- gpgcheck
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY Public key for co ...
- 第三百四十七天 how can I 坚持
下班的时候眼皮就一直在跳,今天意志好消沉,以后还是少说话,多说不宜啊.. 挣脱束缚,无论怎样,对于生命,什么都是次要的,不要想太多. 最近事比较多,应该是累了,睡一觉 应该就好了. 睡觉,晚安.
- C#下载http文件
@(编程) using System; using System.IO; using System.Net; namespace Wisdombud.Util { public class HttpH ...
- WIN7 WIN8 笔记本无线网卡MAC地址修改
找了好久,尝试了好多种方法,最后终于在下面的网址里找到了解决方案 http://jingyan.baidu.com/article/ceb9fb10e32bce8cac2ba04a.html 使用MA ...