(一)CSS3动画应用 - CSS3 实现 侧边栏展开收起

@keyframes

规则用于创建动画。

@keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果

@keyframes 中创建动画时,请把它捆绑到某个选择器,否则不会产生动画效果。

通过规定至少以下两项 CSS3 动画属性,即可将动画绑定到选择器:

  • 规定动画的名称
  • 规定动画的时长

animation

animation 属性是一个简写属性,用于设置动画属性:

  • animation-name:规定 @keyframes 动画的名称。
  • animation-duration:规定动画完成一个周期所花费的秒或毫秒。默认是 0。
  • animation-timing-function:规定动画的速度曲线。默认是 "ease"。
  • animation-delay:规定动画何时开始。默认是 0
  • animation-iteration-count:规定动画被播放的次数。默认是 1。
  • animation-direction:规定动画是否在下一周期逆向地播放。默认是 "normal"。
  • animation-fill-mode:规定对象动画时间之外的状态

侧边栏实现

 1 /* 动画定义 */
 2 @-webkit-keyframes move_right {
 3     from {
 4         opacity: 0;
 5     }
 6     to {
 7         opacity: 1;
 8         -webkit-transform: translateX(120px);
 9         transform: translateX(120px);
10     }
11 }
12 @keyframes move_right {
13     from {
14         opacity: 0;
15     }
16     to {
17         opacity: 1;
18         -webkit-transform: translateX(120px);
19         transform: translateX(120px);
20     }
21 }
22 @-webkit-keyframes move_left {
23     from {
24         opacity: 1;
25     }
26     to {
27         opacity: 0;
28         -webkit-transform: translateX(-120px);
29         transform: translateX(-120px);
30     }
31 }
32 @keyframes move_left {
33     from {
34         opacity: 1;
35     }
36     to {
37         opacity: 0;
38         -webkit-transform: translateX(-120px);
39         transform: translateX(-120px);
40     }
41 }
42 @-webkit-keyframes move_up {
43     from {
44         opacity: 0;
45     }
46     to {
47         opacity: 1;
48         -webkit-transform: translateY(-250px);
49         transform: translateY(-250px);
50     }
51 }
52 @keyframes move_up {
53     from {
54         opacity: 0;
55     }
56     to {
57         opacity: 1;
58         -webkit-transform: translateY(-250px);
59         transform: translateY(-250px);
60     }
61 }
 1 /* 动画绑定 */
 2 .move_right {
 3     -webkit-animation-name            : move_right;
 4     animation-name            : move_right;
 5     -webkit-animation-duration        : 1s;
 6     animation-duration        : 1s;
 7     -webkit-animation-iteration-count : 1;
 8     animation-iteration-count : 1;
 9     -webkit-animation-fill-mode : forwards;
10     animation-fill-mode : forwards;
11 }
12 .move_left {
13     -webkit-animation-name            : move_left;
14     animation-name            : move_left;
15     -webkit-animation-duration        : 1s;
16     animation-duration        : 1s;
17     -webkit-animation-iteration-count : 1;
18     animation-iteration-count : 1;
19     -webkit-animation-fill-mode : forwards;
20     animation-fill-mode : forwards;
21 }
22 .move_up {
23     -webkit-animation-name            : move_up;
24     animation-name            : move_up;
25     -webkit-animation-duration        : 1s;
26     animation-duration        : 1s;
27     -webkit-animation-iteration-count : 1;
28     animation-iteration-count : 1;
29     -webkit-animation-fill-mode : forwards;
30     animation-fill-mode : forwards;
31 }
32 .fadeIn {
33     -webkit-transform : translateX(120px);
34     transform : translateX(120px);
35     opacity: 1;
36 }
37 .fadeInUp {
38     -webkit-transform : translateY(-250px);
39     transform : translateY(-250px);
40     opacity: 1;
41     -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;
42     transition :transform .2s ease-out, opacity .2s ease-out;
43 }
44 .fadeOutLeft {
45     -webkit-transform : translateX(-120px);
46     transform : translateX(-120px);
47     opacity: 0.0;
48     -webkit-transition :-webkit-transform .2s ease-out,opacity .2s ease-out;
49     transition :transform .2s ease-out, opacity .2s ease-out;
50 }

html

 1 <!doctype html>
 2 <html lang="en" class="fullHeight">
 3 <head>
 4     <meta charset="UTF-8">
 5     <title>demo</title>
 6     <link rel="stylesheet" type="text/css" href="sidebar.css">
 7 </head>
 8 <body class="fullHeight">
 9     <div class=‘sidebar fullHeight‘>sidebar</div>
10     <div class="controller">
11         <div>
12             <button onclick="fadeIn()">淡进</button>
13             <button onclick="fadeOut()">淡出</button>
14         </div>
15         <div>
16             <button onclick="fadeInUp()">向上淡进</button>
17             <button onclick="fadeOutLeft()">向左淡出</button>
18         </div>
19     </div>
20     <script src="sidebarEffects.js"></script>
21 </body>
22 </html>

加入JS

 1 <script>
 2 var sidebarEl = document.querySelector(".sidebar");
 3
 4 function fadeIn (e) {
 5     sidebarEl.className = ‘sidebar fullHeight‘;
 6     sidebarEl.style.top = ‘0px‘;
 7     sidebarEl.style.left = ‘0px‘;
 8     sidebarEl.classList.add(‘move_right‘);
 9 }
10 function fadeOut (e) {
11     sidebarEl.className = ‘sidebar fullHeight‘;
12     sidebarEl.style.left = ‘120px‘;
13     sidebarEl.classList.add(‘move_left‘);
14 }
15 function fadeInUp(e) {
16     sidebarEl.className = ‘sidebar fullHeight‘;
17     sidebarEl.style.top = ‘250px‘;
18     sidebarEl.style.left = ‘120px‘;
19     sidebarEl.classList.add(‘move_up‘);
20
21 }
22 function fadeOutLeft(e) {
23     sidebarEl.className = ‘sidebar fullHeight‘;
24     sidebarEl.style.top = ‘0px‘;
25     sidebarEl.style.left = ‘120px‘;
26     sidebarEl.classList.add(‘move_left‘);
27
28 }
29 </script>
时间: 2024-07-29 07:53:50

(一)CSS3动画应用 - CSS3 实现 侧边栏展开收起的相关文章

CSS3 动画(CSS3 @keyframes 规则)

@keyframes 规则用于创建动画.在 @keyframes 中规定某项 CSS 样式,就能创建由当前样式逐渐改为新样式的动画效果. 浏览器支持 Internet Explorer 10.Firefox 以及 Opera 支持 @keyframes 规则和 animation 属性. Chrome 和 Safari 需要前缀 -webkit-. 注释:Internet Explorer 9,以及更早的版本,不支持 @keyframe 规则或 animation 属性. @keyframes

jQuery 侧边栏展开收起效果

jQuery文件: <script type="text/javascript">    $(function(){                var tit= $(".boxBar dl dt");        var con= $(".boxBar dl dd");        var list=$("dt:gt(4)");        var conBox=$("dd:gt(4)"

CSS3学习(CSS3过渡、CSS3动画)

CSS3过渡:transition属性--专门应对颜色.长度.宽度.位置等变化的过渡 通过CSS3,我们可以在不使用Flash和JavaScript的情况下,为当前某元素从某样式改变为某样式的时候添加过渡效果.我们仅仅使用到了一个transition属性,专门来写过渡从一个样式到另一个样式过渡时所花费的时间,以秒为单位.若时长不规定,默认为0,即没有过渡时间.在使用这个过渡效果的时候,我们使用了类似于超链接的l(link).v(visited).h(hover).a(active)样式的控制.此

显示层封装及实现与优化(无动画+css3动画+js动画)

showhide.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>showhide</title> <link rel="stylesheet" href="../css/base.css"> <style> body{ width

贝塞尔曲线与CSS3动画、SVG和canvas的应用

简介 贝塞尔曲线是可以做出很多复杂的效果来的,比如弹跳球的复杂动画效果,首先加速下降,停止,然后弹起时逐渐减速的效果. 使用贝塞尔曲线常用的两个网址如下: 缓动函数:http://www.xuanfengge.com/easeing/easeing/ cubic-bezier:http://cubic-bezier.com/ 如何用贝塞尔曲线画曲线 一个标准的3次贝塞尔曲线需要4个点:起始点.终止点(也称锚点)以及两个相互分离的中间点. 无论SVG, Canvas还是CSS3动画,都牵扯到这4个

15个无比华丽的HTML5/CSS3动画应用

1.HTML5/CSS3图片选择动画 可选择多张图片 今天我们来分享一款既炫酷又实用的HTML5图片选择特效,当图片被选中时,图片上就会覆盖一个半透明的层,上面有一个勾,并且在选中的时候图片出现弹跳的动画效果. 在线演示        源码下载 2.纯CSS3实现图片复古效果 鼠标滑过切换 今天我们要分享一款非常酷的图片效果,这个效果在很多P图软件中经常可以看到,就是对一张图片进行复古效果的渲染.这款CSS3图片效果就实现了这个复古的特效,我们只要将鼠标滑过图片,就可以实现这一图片复古效果了.

【转】15个无比华丽的HTML5/CSS3动画应用

原文转自:http://www.html5cn.org/article-7089-1.html 前几天,HTML5标准已经尘埃落定,未来的Web将会是由HTML5主导,当然作为开发者对这一喜讯更为动心.本文主要分享了15个无比华丽的HTML5/CSS3动画应用,供大家参考学习.1.HTML5/CSS3图片选择动画 可选择多张图片 今天我们来分享一款既炫酷又实用的HTML5图片选择特效,当图片被选中时,图片上就会覆盖一个半透明的层,上面有一个勾,并且在选中的时候图片出现弹跳的动画效果. 在线演示 

【新特性速递】CSS3动画增强

FineUIPro/Mvc/Core的下个版本(v6.1.0),我们对多个地方的CSS3动画进行了增强,使得用户体验更好. 1. 树控件启用EnableSingleExpand时,使得展开动画和折叠其他节点动画同步进行 FineUIPro/Mvc/Core v6.0.0: FineUIPro/Mvc/Core v6.1.0: 2. 为树表格的节点展开折叠增加动画效果 FineUIPro/Mvc/Core v6.0.0: FineUIPro/Mvc/Core v6.1.0: 3. 为表格的行扩展列

css3 动画(animation)-简单入门

css3之动画(animation) css3中我们可以使用动画,由于取代以前的gif图片,flash动画,以及部分javascript代码(相信有很多同学都用过jquery中的animate方法来做一些动画).具体如何使用呢??? 首先定义一个动画,然后引用动画. 定义一个动画要使用@keyframes,然后跟上你要定义的动画的名字.关键字"from"表示开始, "to"表示结束,等同于0% 和 100%.最好使用百分比来表示变化发生的时间,这样的话还可以定义从开