<div class="swiper mySwiper">
<div class="swiper-wrapper">
<div class="swiper-slide"><img src="https://picsum.photos/id/13/2500/1667" alt=""></div>
<div class="swiper-slide"><img src="https://picsum.photos/id/17/2500/1667" alt=""></div>
<div class="swiper-slide"><img src="https://picsum.photos/id/16/2500/1667" alt=""></div>
<div class="swiper-slide"><img src="https://picsum.photos/id/12/2500/1667" alt=""></div>
</div>
<div class="swiper-pagination"></div>
</div>
html,
body {
position: relative;
height: 100%;
}
body {
background: #eee;
font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
font-size: 14px;
color: #000;
margin: 0;
padding: 0;
}
.swiper {
width: 100%;
height: 100%;
}
.swiper-slide {
text-align: center;
font-size: 18px;
background: #fff;
display: flex;
justify-content: center;
align-items: center;
}
.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}
/* custom code */
.mySwiper .swiper-pagination {
display: flex;
align-items: end;
}
.mm-line-container {
display: flex;
flex-direction: column;
align-items: center;
background: none;
margin: 0 10px;
cursor: pointer;
opacity: .6;
}
.mm-line {
width: 2px;
height: 100px;
background-color: #fff;
border-radius: 0px;
transition: .2s ease-in;
}
.mm-line-container.swiper-pagination-bullet-active {
opacity: 1;
}
.mm-line-container.swiper-pagination-bullet-active .mm-line {
height: 120px;
}
.mm-line-number {
color: #fff;
}
var swiper = new Swiper(".mySwiper", {
swipeHandler: '.swiper-wrapper',
pagination: {
el: ".swiper-pagination",
clickable: true,
bulletClass: 'mm-line-container',
renderBullet: function (index, className) {
return '<div class="mm-line-container ' + className + '"><span class="mm-line-number">' + (index + 1) + '</span><div class="mm-line"></div></div>';
}
}
});