首页 > 开发 > CSS > 正文

CSS3的transition和animation的用法实例介绍

2024-07-11 08:35:01
字体:
来源:转载
供稿:网友

transition

transition 属性是
transition-property,
transition-duration,
transition-timing-function,
transition-delay
的简称,用于设定一个元素的两个状态,不同的状态可以用伪类,比如:hover, :active 或者是通过 javascript 动态设定。IE10+支持。

所以 transition 的初始值为:

transition-delay: 0s;
transition-duration: 0s;
transition-property: all;
transition-timing-function: ease;

用法

div {
transition: <property> <duration> <timing-function> <delay>;
}

并且有事件可以监测 transition 结束

el.addEventListener("transitionend",updateTransition,true);

//in webkit
el.addEventListener("webkitTransitionEnd",updateTransition,true);

实例

HTML


<!– DEMO 1: Fade Block –>
<div id=”fade”>
move here !
</div>
<div id=”nudge”>
mouse on me
</div>
<div id=”bounce”>Place mouse on me i will bounce!</div>
<div id=”spin”>Place mouse on me i won me i won me i won me i won me i won me i won me i won me i won me i won me i won me i won me i won me i won me i won me i will spin</div>
<div id=”accordion” class=”accordion”>
<a href=”#first”>This is first tab</a>
<div id=”first”><p>Lorem ipsum </p> </div>
<a href=”#second”>This is second tab</a>
<div id=”second”><p>Lorem ipsum </p> </div>
<a href=”#third”>This is third tab</a>
<div id=”third”><p>Lorem ipsum </p> </div>
</div>

CSS


/*
DEMO 1: Fade Block
*/
div {
margin-bottom: 50px;
}
#fade {
/*opacity:1;
-webkit-transition: opacity 10s liner 10s;*/
position: relative;
transition-property: font-size;
transition-duration: 0.5s;
transition-delay: 0;
font-size: 14px;
}
#fade:hover {
font-size: 36px;
}

/* DEMO2 */
#nudge{
-webkit-transition-property: color,
background-color,padding-left;
-webkit-transition-duration: 500ms,500ms, 500ms;
}
#nudge:hover{
background-color: #efefef;
color: #333;
padding-left: 50px;
}
#bounce:hover {
-webkit-animation-name:bounce;
-webkit-animation-duration:1s;
-webkit-animation-iteration-count:2;
-webkit-animation-direction:alternate
}
@-webkit-keyframes bounce {
from{margin-left:0;}
to{margin-left:250px;}
}
#spin{
-webkit-transition: -webkit-transform 10s ease-in;
}
#spin:hover{
-webkit-transform: rotate(36000deg);

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表