html - 为什么使用 height:0 在 CSS 中隐藏组件时需要溢出:隐藏?
问题描述
我不能使用 display:none 或 visibility:none 因为它需要动画。
为什么溢出:当我看不到或认为它溢出时需要隐藏?
https://www.youtube.com/watch?v=-8LTPIJBGwQ (大约 24 分钟,我有问题的部分是).nav-links {
display: flex;
flex-direction: column;
height: 0;
overflow: hidden;
transition: var(--transition);
}
.show-links {
height: 312px;
}
解决方案
CSS 的溢出属性定义了当容器的内容大于容器本身时如何处理。因为当容器是一维的(即其中一个维度设置为 0)时内容总是大于容器,所以溢出属性将用于定义网页如何处理内容。默认情况下,溢出设置为“可见”,因此内容将显示在原始容器之外。如果您希望内容不可见,则必须将溢出设置为隐藏,这将导致任何溢出内容(无法放入容器内的内容)被隐藏。
由于没有内容可以插入高度为 0px 的容器中,因此容器的所有内容都将被视为溢出,并且由于要隐藏内容,因此需要隐藏溢出 - 这就是将溢出设置为隐藏的作用. https://www.w3schools.com/cssref/pr_pos_overflow.asp
推荐阅读
- android - 如何保留不同版本的 Firebase?
- pandas - 以矢量化方式将 CustomBusinessHour 添加到 DateTimeIndex
- sql - SQL中如何根据不同的功能实现不同字段的多个join?
- python - 我应该实施哪种机器学习算法来检测文档类型?
- angular - 如何返回所有用户
- android - Flutter:使用来自 flutter_webrtc 的纹理在 firebase_ml_vision 中进行图像处理
- nhibernate - 删除一对零或一个子记录不起作用
- python-3.x - 如何将值添加到缺失值 i
- python - 在 LibTorch 中运行从 PyTorch 训练和导出的模型时获得的不正确结果
- ios - 使用场景套件无法在场景背景中看到视频