gpt4 book ai didi

javascript - CSS动画向下而不是向上

转载 作者:可可西里 更新时间:2023-11-01 12:58:43 27 4
gpt4 key购买 nike

简而言之,我有三个带有 borderdiv 容器。每个里面都有一个 div,背景颜色设置为 100% 宽度和高度。这个想法是,当我点击它们时,水应该从上到下排空。我通过将内部 div 的高度从 100% 切换到 0% 来实现这一点。然而,当然这只会使水漂浮起来。所以我一直在寻找一个下午的大部分时间,但没有找到任何东西。我正在寻找最简单的方法来让它向后移动或原样翻转 y 轴,从表面上看这不会那么困难,不是吗?

无论如何,这是一个代码笔,因为 jsfiddle 想要允许 css 动画,我正在尝试做的事情。 https://codepen.io/anon/pen/NgYEKE

function func1(buttonname) {
var x = document.getElementById(buttonname).className;

if (x = "full") {
document.getElementById(buttonname).className = "empty";
} else {
document.getElementById(buttonname).className = "full";
}
}
.full {
height: 100%;
transition:height 2s;
}

.empty {
height: 0%;
transition: height 2s;
}
<body style="background-color:black;">
<div style="display:flex;justify-content:center;align-content:center;">
<div id="glass1" style="height:50px;width:25px;border:2px solid blue;margin: 3px;">
<div id="water1" class="full" style="width:100%;background-color:aqua;"></div>
</div>
<div id="glass2" style="height:50px;width:25px;border:2px solid blue;margin: 3px;">
<div id="water2" class="full" style="width:100%;background-color:aqua;"></div>
</div>
<div id="glass3" style="height:50px;width:25px;border:2px solid blue;margin: 3px;">
<div id="water3" class="full" style="width:100%;background-color:aqua;"></div>
</div>
</div>
<div style="display:flex;justify-content:center;align-content:center;">
<button id="button1" onclick="func1(this.innerHTML)">water1</button>
<button id="button2" onclick="func1(this.innerHTML)">water2</button>
<button id="button3" onclick="func1(this.innerHTML)">water3</button>
</div>
</body>

附带说明一下,我也相信我已经正确编写了 Javascript 以在空类和完整类之间切换,但似乎只能以一种方式工作,如果您知道我在那里做错了什么,它也会有所帮助。

最佳答案

元素高度按照设计从上到下开始,您可以在声明 bottom transform-origin 时使用 scaleY 转换。

演示

div {
height: 200px;
width: 50px;
border: 1px solid;
}

div div {
height: 100%;
background: blue;
transform-origin: bottom;
transition: transform 2s;
}

div div:hover {
transform: scaleY(0);
}
<div>
<div></div>
</div>

关于javascript - CSS动画向下而不是向上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44874499/

27 4 0
文章推荐: html - 单击