gpt4 book ai didi

javascript - 在 Y 轴上设置动画而不在 X 轴下方移动元素

转载 作者:行者123 更新时间:2023-11-28 07:38:05 25 4
gpt4 key购买 nike

我正在尝试使用 CSS 和 Javascript 实现一种效果,即在单击时显示部分的更多内容 [就像图像中的红色方 block ],但不会干扰几乎元素的“X 轴”位置,也不会静态定义列数量。到目前为止,我所做的是将动画内容下方的 block 移动到右侧。有什么建议或图书馆吗?非常感谢。

图片:https://www.dropbox.com/s/un0ta6ch5xr17nk/question.png?dl=0

编辑:

这是 fiddle ,显示了单击左侧的 elementos 时发生的情况:

https://jsfiddle.net/2y2vwy0b/

和通讯员代码

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
body{
position: fixed;
height: 100%;
width: 100%;
}

.container{
width: 50%;
height: 80%;
margin: 0 auto;
background: #E3DBDB;
}

.item{
width: 40%;
height: 10%;
float: left;
margin: 1em;
background: #7C86C0;
color: #fff;
text-align: center;
cursor: pointer;
}
/*.item:nth-child(2n+1){
float: left;
}

.item:nth-child(2n){
float: right;
}*/

.itemActive{
background: #a70000;
height: 30%;
}
</style>
</head>
<body>

<div class="container">
<div class="item">1</div>
<div class="item">2</div>
<div class="item">3</div>
<div class="item">4</div>
<div class="item">5</div>
<div class="item">6</div>
</div>

<script>
function resizeHeight( evt ) {
evt.target.classList.toggle('itemActive');
}

var targets = document.getElementsByClassName('item');
for (var i = 0; i < targets.length; i++) {
targets[i].addEventListener("click", resizeHeight);
}

</script>

</body>
</html>

最佳答案

如果您不担心支持旧版浏览器,您绝对应该查看 CSS3 Flexbox .如果您需要为移动设备定位不同的布局,它可以仅使用 CSS3 和可能的一些媒体查询来完成您的图片所描述的内容。

关于javascript - 在 Y 轴上设置动画而不在 X 轴下方移动元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31117854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com