理解CSS3属性transition

一、说明

1.1 定义和用法

transition 属性是一个简写属性,用于设置四个过渡属性:

  • transition-property:规定设置过渡效果的CSS属性的名称。
  • transition-duration:规定完成过渡效果需要多少秒或毫秒。
  • transition-timing-function:规定速度效果的速度曲线。
  • transition-delay:定义过渡效果何时开始。

1.2 语法

transition: property duration timing-function delay;

1.3 transition-timing-function

1.3.1 语法

transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic- bezier(n,n,n,n);

1.3.2 说明
  • linear:规定以相同速度开始至结束的过渡效果(等于cubic-bezier(0,0,1,1))。
  • ease:规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。
  • ease-in:规定以慢速开始的过渡效果(等于cubic-bezier(0.42,0,1,1))。
  • ease-out:规定以慢速结束的过渡效果(等于cubic-bezier(0,0,0.58,1))。
  • ease-in-out:规定以慢速开始和结束的过渡效果(等于cubic-bezier(0.42,0,0.58,1))。
  • cubic-bezier(n,n,n,n):在cubic-bezier函数中定义自己的值。可能的值是0至1之间的数值。

二、示例

<style>
.transition-example{
width: 500px;
height: 370px;
background: #ccc;
padding: 10px 0;
}
.transition-example:hover>div{
margin-left: 90%;
transform: rotate(360deg);
border-radius: 5px;
}
.transition-example>div{
width: 50px;
height: 50px;
text-align: center;
margin: 10px 0;
background-color: blue;
color: #fff;
}
.linear{
transition: all 5s linear;
}
.ease{
transition: all 5s ease;
}
.ease-in{
transition: all 5s ease-in;
}
.ease-out{
transition: all 5s ease-out;
}
.ease-in-out{
transition: all 5s ease-in-out;
}
.cubic-bezier{
transition: all 5s cubic-bezier(0.42,0,0.58,1);
} </style>
<div class="transition-example">
<div class="linear">linear</div>
<div class="ease">ease</div>
<div class="ease-in">ease-in</div>
<div class="ease-out">ease-out</div>
<div class="ease-in-out">ease-in-out</div>
<div class="cubic-bezier">cubic-bezier</div>
</div>

div{
margin-left: 90%;
transform: rotate(360deg);
border-radius: 5px;
}
.transition-example>div{
width: 50px;
height: 50px;
text-align: center;
margin: 10px 0;
background-color: blue;
color: #fff;
}
.linear{
transition: all 5s linear;
}
.ease{
transition: all 5s ease;
}
.ease-in{
transition: all 5s ease-in;
}
.ease-out{
transition: all 5s ease-out;
}
.ease-in-out{
transition: all 5s ease-in-out;
}
.cubic-bezier{
transition: all 5s cubic-bezier(0.42,0,0.58,1);
}
-->

linear
ease
ease-in
ease-out
ease-in-out
cubic-bezier

理解CSS3属性transition

上一篇:jzoj6099. 【GDOI2019模拟2019.4.1】Dist


下一篇:css3属性 transition transform