首页 > 其他分享 >如何通过CSS将高度从0过渡到auto?

如何通过CSS将高度从0过渡到auto?

时间:2023-11-01 20:01:01浏览次数:31  
标签:1s auto ease transition height 过渡 max CSS

内容来自 DOC https://q.houxu6.top/?s=如何通过CSS将高度从0过渡到auto?

你可以尝试使用max-height属性来实现这个效果,而不是使用height属性。这样,在悬停时,<ul>的高度会逐渐增加,而不会出现突然跳跃的情况。以下是修改后的CSS代码:

#child0 {
  max-height: 0;
  overflow: hidden;
  background-color: #dedede;
  -moz-transition: max-height 1s ease;
  -webkit-transition: max-height 1s ease;
  -o-transition: max-height 1s ease;
  transition: max-height 1s ease;
}
#parent0:hover #child0 {
  max-height: auto;
}
#child40 {
  max-height: 40px;
  overflow: hidden;
  background-color: #dedede;
  -moz-transition: max-height 1s ease;
  -webkit-transition: max-height 1s ease;
  -o-transition: max-height 1s ease;
  transition: max-height 1s ease;
}
#parent40:hover #child40 {
  max-height: auto;
}
h1 {
  font-weight: bold;
}

这样,当你悬停在两个不同的<div>元素上时,它们的高度将以平滑的方式过渡,而不是突然跳跃。


在过渡中使用max-height而不是height,并设置一个比框体实际高度更大的值。

Chris Jordan在一个答案中提供了一个JSFiddle演示,请参阅:http://jsfiddle.net/thechrisjordan/3Fc7D/23/

#menu #list {
    max-height: 0;
    transition: max-height 0.15s ease-out;
    overflow: hidden;
    background: #d5d5d5;
}

#menu:hover #list {
    max-height: 500px;
    transition: max-height 0.25s ease-in;
}
<div id="menu">
    <a>悬停我</a>
    <ul id="list">
        <!-- 创建一个或多个列表项,以查看动画效果 -->
        <li>项目</li>
        <li>项目</li>
        <li>项目</li>
        <li>项目</li>
        <li>项目</li>
    </ul>
</div>

标签:1s,auto,ease,transition,height,过渡,max,CSS
From: https://www.cnblogs.com/xiaomandujia/p/17803960.html

相关文章

  • 怎么用 CSS 美化被选中的文字?
    要使用CSS美化被选中的文字,可以使用::selection伪元素选择器来设置样式。该选择器会选中用户在页面上所选中的文本,因此您可以使用它来应用样式来改变文本的外观。例如,要将被选中的文本的背景色设置为黄色,可以使用以下CSS代码:::selection{background-color:yellow;......
  • 【AutoML】AutoKeras 的安装和环境配置(VSCode)
    本地环境中已经有太多的工作配置了(Python、Java、Maven、Docker等等),为了不影响其他环境运行,我选择直接在VSCode中创建工作空间并配置好AutoKeras(反正最后也是要在VSCode中进行开发的)。<br>打开VSCode后先创建一个工作区,然后在终端运行以下代码:python3-mvenvautokeras-......
  • Android自动化测试框架:UiAutomator和UiAutomator2的区别与示例代码
    UiAutomator和UiAutomator2是两种常用的Android自动化测试框架,它们都是由Google开发的。然而,它们之间存在一些关键的区别:API级别:UiAutomator框架在Android4.3(API级别18)中引入,而UiAutomator2在Android5.0(API级别21)中引入。测试能力:UiAutomator只能测试Android系统应用......
  • nginx(autoindex on;)访问文件数据访问不到的解决办法
    解决办法注意文件路径是文件夹要以/斜杠结尾正确:/path/to/data/错误:/path/to/data示例: location/data{ alias/path/to/data/; autoindexon; }......
  • [win]使用 AutoHotKey 配合Win10分屏功能
    Win+tab键建立新的虚拟桌面使用笔记本电脑的触摸板,用四个手指滑的话就可以在虚拟桌面间切换 那么就映射一下,要是能一键切换的话就相当于是个"老板键"了  1.安装AutoHotKey2.安装完后查看.chm文档3.配置脚本,这里的意思是用鼠标侧键完成切换虚拟桌面的功能,如果老板来了就可以一......
  • html+css设计logo
    1.实现以下logo2.代码如下......
  • CSS样式之基础选择器
    CSS样式css样式的作用是改变标签的内容如何选中标签的内容? 方法是使用选择器来实现①标签选择器 ②类选择器 ③id选择器④通配符选择器 标签选择器语法:标签{属性:值;属性:值;.........属性:值;}举个例子:1<!DOCTYPEhtml>2<htmllang="en">34<head>......
  • CSS 中的 :root
    CSS中的:root:https://blog.csdn.net/weixin_51123974/article/details/122311909?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522169873849916800192266666%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=1698738499168001922......
  • 每日一练:css关键词:inherit、initial、revert、unset解释
    1、inherit(继承)inherit关键词用于将一个属性值设置为其父元素的相同属性值。它是一种实现样式继承的方式,使子元素继承父元素的样式属性。如果父元素没有明确定义该属性,子元素将继承到该属性的默认值。这个关键词通常用于处理文本属性,如文本颜色、字体等。<div>......
  • css 设置画对角斜线
    /*通过css画div的对角斜线*/background:linear-gradient(totopright,#EEF2F8,#EEF2F848%,#CEDFF8,#EEF2F851%,#EEF2F8);/*element-uitable表头*/.header-column{height:49px;position:relative;&:before{position:absolute;co......