微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在JavaScript中切换CSS时如何添加衰落效果

如何解决在JavaScript中切换CSS时如何添加衰落效果

当它切换css stlye属性添加classList时,我想添加渐变效果功能
JS:

function darkMode(){
    document.body.classList.toggle("dark-theme");
}
function dropDown(){
    var options = document.getElementById("options")
    options.style.display == "block" ? options.style.display = "none" : 
    options.style.display = "block"; 
    options.classList.toggle("active")
}

css:

#options{
    display: none;
    opacity: 0;
    position: absolute;
    width: 250px;
    height: auto;
    background: var(--main-bg-color);
    border-radius: 5px;
    top: 80px;
    font-size: 17.5px;
    padding: 10px;
    Box-shadow: 0 4px 9.5px 0 rgba(0,0.2),0 2px 4px 0 rgba(0,0.1),inset 0 0 0 1px rgba(255,255,0.5);
    transition: ease-in-out .125s;
}
#options.active{
    top: 65px; 
    opacity: 1;
    transition: ease-in-out .25s;
}

html:

<div class="profile-top" onclick="dropDown()">
                <div class="header-nav">
                    <p class="top-profile-name">
                        name
                    </p>
                    <img class="profile-image" src="..\img\img.png\">
                    <svg width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg" class="dropdown-icon" data-v-49c8d0d2="">
                        <path d="M1 1L5 5L9 1" stroke="white" data-v-49c8d0d2=""></path>
                    </svg>
                </div>
                <div class="top-profile-menu"  id="options">
                    <div class="setting-buttons">
                        <img class="setting-icons" src="..\img\settings.svg\">
                        <a class="profile-parameters">
                            settings
                        </a>
                    </div>
                    <div class="setting-buttons" onclick="darkMode()">
                        <img class="setting-icons" src="..\img\moon.svg\">
                        <a class="profile-parameters">
                            dark design
                        </a>
                    </div>
                    <div class="setting-buttons">
                        <img class="setting-icons" src="..\img\logout.svg\">
                        <a class="profile-parameters">
                            logout
                        </a>
                    </div>
                </div>
            </div>

这是jsfiddle处的完整html css和js代码
我有一个div元素,当您单击它时,funcion(darkMode)打开,并将css属性display: none;更改为display: block;添加了ClassLists,我在css中添加了transition属性,但是当显示更改时,转换无效。我想在不使用jquery的情况下进行过渡工作,或以某种方式添加js淡入淡出效果

解决方法

在第二堂课中添加visability: hidden;visability: visible;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?