transition实现自定义tips淡入淡出效果

本文演示了如何使用CSS过渡动画(transition)实现元素的属性渐变,特别是通过设置transition-property为'opacity'来控制元素的显隐效果。提供了具体的HTML和CSS代码示例,展示了如何在鼠标悬停时改变元素的透明度,从而实现提示框的淡入淡出动画。同时介绍了transition-property的用法及不同属性类型的过渡效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    transition实现动画的时候,只能实现指定属性的渐变,元素显隐要通过opacity来实现:

    做了一个小的demo:

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>transition-demo</title>
<style>
#help{
    width:20px;
    height:20px;
    border-radius:10px;
    color:#fff;
    background:#000;
    text-align:center;
    position:relative;
    margin:50px 20px;
    cursor:pointer;
}
#help .tips{

    position:absolute;
    width:300px;
    height:100px;
    background:#000;
    top:-30px;
    left:30px;
    border-radius:10px;
    opacity:0;
    transition: opacity .5s ease;
    -moz-transition: opacity .5s ease;
    -webkit-transition: opacity .5s ease;
}
.tips:before{
    content:"";
    border-width:10px;
    border-style:solid;
    border-color:transparent #000 transparent transparent;
    position:absolute;
    left:-20px;
    top:35px;
}
#help:hover .tips{
    opacity:0.5;
    transition: opacity .5s ease;
    -moz-transition: opacity .5s ease;
    -webkit-transition: opacity .5s ease;
}
</style>
</head>
<body>
<div id="help">?<div class="tips">Some information for help</div></div>
</body>
</html> 

transition-property是用来指定当元素其中一个属性改变时执行transition效果,其主要有以下几个值:none(没有属 性改变);all(所有属性改变)这个也是其默认值;indent(元素属性名)。当其值为none时,transition马上停止执行,当指定为 all时,则元素产生任何属性值变化时都将执行transition效果,ident是可以指定元素的某一个属性值。其对应的类型如下:

1、color: 通过红、绿、蓝和透明度组件变换(每个数值处理)如:background-color,border-color,color,outline-color等css属性;

2、length: 真实的数字 如:word-spacing,width,vertical- align,top,right,bottom,left,padding,outline-width,margin,min-width,min- height,max-width,max-height,line-height,height,border-width,border- spacing,background-position等属性;

3、percentage:真实的数字 如:word-spacing,width,vertical-align,top,right,bottom,left,min-width,min- height,max-width,max-height,line-height,height,background-position等属性;

4、integer离散步骤(整个数字),在真实的数字空间,以及使用floor()转换为整数时发生 如:outline-offset,z-index等属性;

5、number真实的(浮点型)数值,如:zoom,opacity,font-weight,等属性;

6、transform list

7、rectangle:通过x, y, width 和 height(转为数值)变换,如:crop

8、visibility: 离散步骤,在0到1数字范围之内,0表示“隐藏”,1表示完全“显示”,如:visibility

9、shadow: 作用于color, x, y 和 blur(模糊)属性,如:text-shadow

10、gradient: 通过每次停止时的位置和颜色进行变化。它们必须有相同的类型(放射状的或是线性的)和相同的停止数值以便执行动画,如:background-image

11、paint server (SVG): 只支持下面的情况:从gradient到gradient以及color到color,然后工作与上面类似

12、space-separated list of above:如果列表有相同的项目数值,则列表每一项按照上面的规则进行变化,否则无变化

13、a shorthand property: 如果缩写的所有部分都可以实现动画,则会像所有单个属性变化一样变化

具体什么css属性可以实现transition效果,在W3C官网中列出了所有可以实现transition效果的CSS属性值以及值的类型,可以点这里了解详情。这里需要提醒一点是,并不是什么属性改变都为触发transition动作效果,比如页面的自适应宽度,当浏览器改变宽度时,并不会触发transition的效果。但上述表格所示的属性类型改变都会触发一个transition动作效果。

这里没有display:none到display:block这类型的改变,一般是具体带有值的属性的渐变。

转载于:https://www.cnblogs.com/linda586586/p/4506097.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值