利用所示的css3属性,制作一幅校园风光的照片墙,照片墙的形状可以自己设计。要求有交互的效果
时间: 2023-06-17 07:02:15 浏览: 58
为了制作一个校园风光的照片墙,我们可以使用以下步骤:
1. 设计照片墙的形状,可以使用 CSS3 的 clip-path 属性来实现,也可以使用 SVG 图形。
2. 使用 CSS3 的 flexbox 布局来排列照片,并设置照片的大小和间距。
3. 在每张照片上添加 hover 效果,使鼠标悬浮在照片上时,照片放大并显示标题和描述信息。
下面是一个简单的示例代码,你可以根据自己的需求进行修改。
HTML 代码:
```html
<div class="photo-wall">
<div class="photo">
<img src="photo1.jpg" alt="Photo 1">
<div class="photo-caption">
<h3>校园风光1</h3>
<p>这是校园的一张美丽风景照片。</p>
</div>
</div>
<div class="photo">
<img src="photo2.jpg" alt="Photo 2">
<div class="photo-caption">
<h3>校园风光2</h3>
<p>这是校园的另一张美丽风景照片。</p>
</div>
</div>
<div class="photo">
<img src="photo3.jpg" alt="Photo 3">
<div class="photo-caption">
<h3>校园风光3</h3>
<p>这是校园的第三张美丽风景照片。</p>
</div>
</div>
<!-- 添加更多照片 -->
</div>
```
CSS 代码:
```css
.photo-wall {
display: flex;
flex-wrap: wrap;
gap: 20px;
}
.photo {
position: relative;
width: 200px;
height: 200px;
overflow: hidden;
clip-path: polygon(0 0, 100% 0, 80% 100%, 20% 100%);
transition: all 0.5s ease-out;
}
.photo:hover {
transform: scale(1.1);
}
.photo img {
width: 100%;
height: 100%;
object-fit: cover;
}
.photo-caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
padding: 10px;
background-color: rgba(0, 0, 0, 0.5);
color: #fff;
transform: translateY(100%);
transition: all 0.5s ease-out;
}
.photo:hover .photo-caption {
transform: translateY(0);
}
.photo-caption h3 {
margin: 0;
font-size: 16px;
}
.photo-caption p {
margin: 0;
font-size: 14px;
}
```
在上面的代码中,我们使用了 clip-path 属性来设置照片的形状,使用 flexbox 布局来排列照片,并在每张照片上添加了 hover 效果和标题描述信息。你可以将上面的代码复制到你的 HTML 和 CSS 文件中,并替换图片路径,以便测试效果。