如何用CSS做到图片滚动
时间: 2023-09-20 19:11:54 浏览: 41
要实现图片滚动,可以使用CSS中的动画和滚动属性。以下是一个基本的实现示例:
HTML代码:
```
<div class="scroll-container">
<img src="image1.jpg">
<img src="image2.jpg">
<img src="image3.jpg">
<img src="image4.jpg">
<img src="image5.jpg">
</div>
```
CSS代码:
```
.scroll-container {
width: 100%;
overflow-x: scroll;
white-space: nowrap;
}
.scroll-container img {
display: inline-block;
height: 200px;
margin-right: 10px;
}
/* 动画 */
@keyframes scroll {
0% { transform: translateX(0); }
100% { transform: translateX(-100%); }
}
.scroll-container img {
animation: scroll 10s linear infinite;
}
```
这个示例中,我们首先创建了一个包含多个图片的容器,并将其设置为水平滚动。然后,我们使用CSS动画来移动图片,使其像滚动一样移动。最后,我们将动画应用于每个图片元素,使其无限循环。
相关问题
css图片循环滚动
你可以使用 CSS 动画和 `@keyframes` 规则来实现图片循环滚动。以下是一个简单的示例:
HTML 代码:
```
<div class="image-container">
<img src="image1.jpg">
<img src="image2.jpg">
<img src="image3.jpg">
</div>
```
CSS 代码:
```
.image-container {
overflow: hidden; /* 隐藏超出容器大小的图片 */
width: 500px; /* 设置容器宽度 */
height: 300px; /* 设置容器高度 */
}
.image-container img {
width: 100%; /* 设置图片宽度为容器宽度 */
height: auto; /* 自适应高度 */
animation: scroll 10s linear infinite; /* 应用动画 */
}
@keyframes scroll {
0% {
transform: translateX(0); /* 图片从左边开始滚动 */
}
100% {
transform: translateX(-1500px); /* 图片向左滚动 1500 像素 */
}
}
```
在上面的示例中,我们使用 `translateX()` 函数将图片向左移动。`animation` 属性指定了应用的动画,`scroll` 是动画名称,`10s` 是动画持续时间,`linear` 是动画速度曲线,`infinite` 表示动画应该无限循环播放。在 `@keyframes` 规则中,我们定义了动画的开始和结束状态,即图片从左侧开始滚动,最终滚动到容器的左侧超出范围。
css五张平行图片滚动
以下是一个使用CSS实现五张平行图片滚动的示例:
```html
<!DOCTYPE html>
<html>
<head>
<style>
.container {
width: 100%;
overflow: hidden;
}
.slider {
display: flex;
animation: slide 10s infinite;
}
.slide {
flex: 0 0 20%;
margin-right: 20px;
}
@keyframes slide {
0% { transform: translateX(0); }
20% { transform: translateX(-20%); }
40% { transform: translateX(-40%); }
60% { transform: translateX(-60%); }
80% { transform: translateX(-80%); }
100% { transform: translateX(-100%); }
}
</style>
</head>
<body>
<div class="container">
<div class="slider">
<div class="slide">
<img src="image1.jpg" alt="Image 1">
</div>
<div class="slide">
<img src="image2.jpg" alt="Image 2">
</div>
<div class="slide">
<img src="image3.jpg" alt="Image 3">
</div>
<div class="slide">
<img src="image4.jpg" alt="Image 4">
</div>
<div class="slide">
<img src="image5.jpg" alt="Image 5">
</div>
</div>
</div>
</body>
</html>
```
这个示例中,我们使用了flex布局和CSS动画来实现图片的滚动效果。通过设置容器的宽度和隐藏溢出部分,我们创建了一个可视区域。然后,我们使用flex布局将图片放置在一个水平的滑动容器中。通过设置动画的关键帧,我们实现了图片的平行滚动效果。