一、语法:transition: property duration timing-function delay

1、transition是个复合属性,它包括以下几个子属性

        transition-property :规定设置过渡效果的css属性名称

        transition-duration :规定完成过渡效果需要多少秒或毫秒

        transition-timing-function :指定过渡函数,规定速度效果的速度曲线

        transition-delay :指定开始出现的延迟时间

2、默认值为:all 0 ease 0

3、改变多个css属性的过渡效果时:

a{ transition: background 0.8s ease-in 0.3s,color 0.6s ease-out 0.3s;}

二、子属性:

1、transition-property

transition-property: none |all |property;

值为none时,没有属性会获得过渡效果,值为all时,所有属性都将获得过渡效果,值为指定的css属性应用过渡效果,多个属性用逗号隔开

2、transition-duration

transition-duration:time;

该属性主要用来设置一个属性过渡到另一个属性所需的时间,也就是从旧属性过渡到新属性花费的时间长度,俗称持续时间

3、transition-timing-function

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

该属性指的是过渡的“缓动函数”。主要用来指定浏览器的过渡速度,以及过渡期间的操作进展情况,ease:由快到慢到更慢、linear:恒速、ease-in:越来越快、ease-out:越来越慢、ease-in-out:先加速后减速、cubic-bezier(n,n,n,n)可以中定义自己的值,如 cubic-bezier(0.42,0,0.58,1)

4、transition-delay

过渡效果开始前的延迟时间,单位秒或者毫秒

三、举个应用例子

div {
  width: 100px;
  height: 100px;
  background-color: orange;
  margin: 20px auto;
  border-radius: 100%;
  -webkit-transition-property: -webkit-border-radius;
  transition-property: border-radius;
  -webkit-transition-duration: 3s;
  transition-duration: 3s;
  -webkit-transition-timing-function:ease;
 transition-timing-function:ease;
 
div:hover {
  border-radius: 0px;
}

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐