gpt4 book ai didi

html css叠加多张图片

转载 作者:行者123 更新时间:2023-11-28 15:16:47 24 4
gpt4 key购买 nike

如何使用css和html在一行中叠加多张图片?
例如:如果我的光标在 image1 上,我希望右侧的所有图像都向右推,就像我可以看到 image1 一样

这是我到目前为止所做的:

HTML

<body>
<div class="deck">
<img src="https://image.tmdb.org/t/p/w220_and_h330_bestv2/kXlrGioGfFKOvibpsPzzGx16cP2.jpg" alt="testimage">
<img src="https://image.tmdb.org/t/p/w220_and_h330_bestv2/zzfwhweu5reCv2Loqzon7Q5WAd5.jpg" alt="testimage">
<img src="https://image.tmdb.org/t/p/w220_and_h330_bestv2/sGuZHYvu0mXeQCwvJ5yzk2Yoytq.jpg" alt="testimage">
<img src="https://image.tmdb.org/t/p/w220_and_h330_bestv2/4Ar01t6sW1ZZBcbz2R1wqjzIBdr.jpg" alt="testimage">

</div>
</body>

CSS

.deck {overflow:hidden}
.deck img {position:relative; float:left; width:185px; height:278px}
.deck img + img {margin-left: -160px;}
.deck img:hover {z-index:9999; border:1px solid red; background: pink}

https://jsfiddle.net/53ryuapx/

最佳答案

您可以使用 ~ 选择器选择悬停图像之后的所有图像。由于图像是相对定位的,您可以将其与 left 值结合使用:

.deck img:hover ~ img {
left: 160px;
}

我什至可以建议您将它与相对较新的 clip-path 属性结合起来吗?遗憾browser support is not great .

.deck img:hover ~ img {
left: 160px;
clip-path: inset(0 160px 0 0)
}

编辑:根据您喜欢的结果,有多种方法可以对此进行动画处理。这可能需要一些 tewaking 才能获得您想要的结果,但这应该可以帮助您入门。这里发生的是我们声明一个名为 slidein 的关键帧动画。当悬停图像时,右侧的图像使用 animation: slidein .2s 进行动画处理。效果见this JSFiddle :

@keyframes slidein {
0% {
left: 0;
clip-path: inset(0 0 0 0);
}
100% {
left: 160px;
clip-path: inset(0 160px 0 0);
}
}
.deck img:hover ~ img {
left: 160px;
clip-path: inset(0 160px 0 0);
animation: slidein .2s;
}

关于html css叠加多张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47000129/

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