首先,先来展示一下手风琴的最终效果:
浅分析一下吧!
我们需要做的就是当鼠标移入图片时,先让所有图片宽度变小,再让当前图片宽度变大,然后再利用CSS过渡效果,就可以完美实现上面的效果了。
transition: width 2s linear;
这是实现手风琴效果的灵魂。
下面是完整代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
*{
margin: 0;
padding: 0;
list-style: none;
}
ul{
width: 960px;
height: 200px;
border: 1px solid;
margin: 50px auto;
overflow: hidden;
}
ul li{
width: 160px;
height: 200px;
float: left;
transition: width 2s linear;
}
/* 移入ul后,li宽度变小 */
ul:hover li{
width: 100px;
}
/* 移入的当前的li宽度变大 */
ul li:hover{
width: 460px;
}
</style>
</head>
<body>
<ul>
<li><img src="./images/ad7.jpeg" alt=""></li>
<li><img src="./images/ad8.jpg" alt=""></li>
<li><img src="./images/ad9.jpeg" alt=""></li>
<li><img src="./images/ad10.jpg" alt=""></li>
<li><img src="./images/ad11.jpg" alt=""></li>
<li><img src="./images/ad12.jpg" alt=""></li>
</ul>
</body>
</html>
注意: