当前位置:网站首页>How to choose Visibility, Display, and Opacity when interacting or animating
How to choose Visibility, Display, and Opacity when interacting or animating
2022-08-01 21:07:00 【Nan Feiyan】
Create fade in/淡出效果

例如,Create fade in/淡出效果
在 Web 前端开发中,我们可以使用display, opacity,visibility和其他 CSS properties to show and hide elements.
How do these properties differ?What if we want to animate when showing and hiding?本文将为您介绍.
Let's take a look at their differences first:

可以看出,There are still some differences between them,We need to choose the attribute according to the specific situation.
For example, the mouseover fades in and out,我们就不能用display.Because it's not transition-animable CSS 属性.换句话说,It cannot be changed within a given time.
visibility 和 opactiy Two are transition animations that can be set
<style>
div {
border: 1px solid #000;
color: red;
font-size: 36px;
width: 150px;
height: 150px;
}
div > span {
opacity: 0;
transition: opacity 1s linear;
}
div:hover > span {
visibility: visible;
opacity: 1;
}
</style>
<div>
<span>content</span>
</div>

看起来很棒.But if we give useopacityHidden elements are bound to click events, 当opacity: 0can still be clicked, Then I want to have a transition effect at this time, Also thought he couldn't be clicked when he was hidden, only when displayed,才能被点击
<style>
#upper {
position: absolute;
width: 150px;
height: 150px;
opacity: 1;
visibility: visible;
background-color: beige;
transition-property: opacity, visibility;
transition-duration: 0.6s;
}
#lower {
background-color: aquamarine;
width: 200px;
height: 200px;
}
</style>
<div id="upper"></div>
<div id="lower"></div>
<script>
const [upper, lower] = ["upper", "lower"].map((i) =>
document.getElementById(i)
);
upper.addEventListener("click", () => {
upper.style.opacity = 0;
// Toggle comments here to see the difference
upper.style.visibility = "hidden";
});
const randomColor = () => `#${(~~(Math.random() * (1 << 24))).toString(16)}`;
lower.addEventListener("click", () => {
lower.style.backgroundColor = randomColor();
});
</script>
In this way, we have a transition effect when hiding, At the same time, after hiding, there is no click event
边栏推荐
猜你喜欢

响应式织梦模板清洁服务类网站

微信小程序云开发|个人博客小程序

Questions I don't know in database kernel interview(1)

C专家编程 第1章 C:穿越时空的迷雾 1.4 K&R C

R语言进行相关的操作
![漏洞分析丨HEVD-0x6.UninitializedStackVariable[win7x86]](/img/37/09ab9b5a490c6ab9bc7991ecc4c8f4.png)
漏洞分析丨HEVD-0x6.UninitializedStackVariable[win7x86]

STAHL touch screen repair all-in-one display screen ET-316-TX-TFT common faults

Postman 批量测试接口详细教程

扣减库存方案

StringTable详解 串池 性能调优 字符串拼接
随机推荐
MySQL 中出现的字符编码错误 Incorrect string value: ‘\x\x\x\x‘ for column ‘x‘
string
tiup mirror grant
通俗解释:什么是临床预测模型
JS Improvement: Handwritten Publish Subscriber Model (Xiaobai)
Pytorch框架学校记录11——搭建小实战完整细节
【接口测试】JMeter调用JS文件实现RSA加密
测试的意义并不是能找到全部的缺陷
Goroutine Leaks - The Forgotten Sender
移植MQTT源码到STM32F407开发板上
JS提升:手写发布订阅者模式(小白篇)
Review Set/Map basics with these two hooks
pytest:开始使用
C专家编程 第1章 C:穿越时空的迷雾 1.3 标准I/O库和C预处理器
Go Atomic
STAHL touch screen repair all-in-one display screen ET-316-TX-TFT common faults
tiup mirror merge
列表页常见的 hook 封装
使用员工管理软件,解锁人力生产力新水平,提高人力资源团队灵活性
Graph adjacency matrix storage