css transition opacity,CSS transition属性

前言

transition通常用来设置animatable元素状态切换的效果,如淡入淡出等。

以下介绍下transition的属性及值,以及如何对非animatable,如display等的一些小技巧。

属性

1、transition-property: 指定要使用过渡效果的属性,比如宽度,高度或者透明度等。

2、transition-duration: 指定变化所需的时间

3、transition-delay: 指定延迟多长时间后再执行变化

4、transition-timing-function: 通过贝塞尔曲线指定动画的效果。

值可为:ease, linear, ease-in, ease-out, ease-in-out等

f113f6f3e386?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

transition.png

关于贝塞尔曲线可参考这里

元素淡入淡出

1、结合visibility与transition属性

div {

border: 1px solid #eee;

}

div > ul {

visibility: hidden;

opacity: 0;

transition: visibility 0s, opacity 0.5s linear;

}

div:hover > ul {

visibility: visible;

opacity: 1;

}

  • Item 1
  • Item 2
  • Item 3

2、结合opacity与transition属性

若要额外设置height从0到auto变化,对height属性也要添加transition

div {

transition: opacity 1s ease-out;

opacity: 0;

overflow: hidden;

}

div.active {

opacity: 1;

}

3、opacity结合animation关键帧

.parent:hover .child {

display: block;

animation: fadeIn 1s;

}

@keyframes fadeIn {

from { opacity: 0; }

to { opacity: 1; }

}

4、对3的扩展,实现淡入淡出

@-webkit-keyframes fadeInOut {

0% {

opacity:1;

}

25% {

opacity:0;

}

50% {

opacity: 0;

}

75% {

opacity:1;

}

}

.anim_fade_image {

position:absolute;

-webkit-animation-name: fadeInOut;

-webkit-animation-timing-function: ease-in-out;

-webkit-animation-iteration-count: infinite;

-webkit-animation-duration: 12s;

-webkit-animation-direction: alternate;

}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: CSS opacity transition是一种CSS属性过渡效果,它可以在元素透明度发生变化时平滑地过渡,而不是突然出现或消失。通过使用opacity属性transition属性,可以实现这种效果。例如: ```css /* 元素初始状态 */ .element { opacity: 1; transition: opacity 0.5s ease-in-out; } /* 元素鼠标悬浮状态 */ .element:hover { opacity: 0.5; } ``` 在上面的例子中,当鼠标悬浮在元素上时,元素的透明度会从1过渡到0.5,过渡时间为0.5秒,过渡效果为ease-in-out。这样可以让元素透明度变化时有一个平滑的过渡效果,增强用户体验。 ### 回答2: CSSopacity属性用于设置元素的透明度,取值范围为0到1之间,其中0表示完全透明,1表示完全不透明。 而CSStransition属性可以控制元素的过渡效果,可以使元素在不同状态之间平滑过渡。当在元素的样式中使用transition属性时,我们可以指定过渡的属性、时长、延迟和过渡的函数。 如果想要设置透明度的过渡效果,可以将opacity属性transition属性结合使用。例如,当鼠标悬停在一个元素上时,可以改变元素的透明度,并添加过渡效果,使得透明度的改变渐变过渡。 使用opacitytransition可以实现平滑的透明度过渡效果,给网页增添一些动态感。在CSS中设置元素的opacity属性为0,然后通过添加一个类或者使用JavaScript来触发过渡,将opacity属性的值改为1,即可实现元素的淡入效果。同样,可以通过改变opacity的值为0来实现元素的淡出效果。 需要注意的是,opacity影响到元素内部的内容以及子元素的透明度,而不仅仅是元素本身。此外,使用transition属性时,尽量避免给元素添加过多的过渡属性,以免造成页面的卡顿。 ### 回答3: CSSopacity属性用于设置元素的不透明度。默认情况下,元素的不透明度是1,表示完全不透明。将opacity的值设置为0可以使元素完全透明。 在CSS中,使用transition属性可以创建平滑的过渡效果。通过设置opacity的过渡效果,可以实现元素在不透明度改变时的渐变效果。 要创建opacity的过渡效果,我们可以在元素的CSS样式中添加transition属性,并指定需要过渡的属性opacity,以及过渡的持续时间和类型。 例如,我们可以添加如下的CSS样式: ``` .transition { transition: opacity 0.5s ease; } ``` 在上述代码中,.transition是一个类选择器,我们可以将其应用于需要设置过渡效果的元素上。transition属性指定了需要过渡的属性opacity(即不透明度),过渡的持续时间为0.5秒,过渡的类型为ease(即缓进缓出)。 当元素的opacity属性的值发生改变时,例如在:hover伪类下将opacity设置为0,CSS过渡效果将会自动应用。这意味着元素的不透明度将在0.5秒的时间内逐渐减少,从而实现了渐变的效果。 总之,CSSopacity属性transition属性的结合使用可以在元素的不透明度改变时创建平滑的过渡效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值