Swiper Responsive
by kerrydp
HTML
<link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.css">
<script src="https://unpkg.com/swiper/swiper-bundle.min.js"></script>
<div class="page-container"> <!-- Container -->
<!-- Column 1 (Swiper) -->
<div class="box1">
<div class="swiper-container">
<!-- Additional required wrapper -->
<div class="swiper-wrapper">
<!-- Slides -->
<div class="swiper-slide">Slide 1</div>
<div class="swiper-slide">Slide 2</div>
<div class="swiper-slide">Slide 3</div>
...
</div>
<!-- If we need pagination -->
<div class="swiper-pagination"></div>
</div>
</div>
<!-- Column 2 (Details) -->
<div class="box2"> Column that remains in right-hand box</div>
<!-- Content that spans two rows -->
<div class="box3">
Content that spans two rows
</div>
</div>
CSS
.page-container {
display: grid;
grid-template-columns: auto auto 200px;
grid-column-gap: 10px;
grid-row-gap: 10px;
}
.box1 {
background-color: red;
grid-column: 1 / span 2;
}
.box2 {
background-color: yellow;
min-width: 200px;
}
.box3 {
background-color: blue;
grid-row: 2;
grid-column: 1 / span 3;
min-height: 200px;
}
.swiper-container {
width: 600px;
height: 300px;
}
JavaScript
var mySwiper = new Swiper('.swiper-container', {
// Optional parameters
direction: 'horizontal',
loop: true,
// If we need pagination
pagination: {
el: '.swiper-pagination',
},
// Navigation arrows
navigation: {
nextEl: '.swiper-button-next',
prevEl: '.swiper-button-prev',
},
// And if we need scrollbar
scrollbar: {
el: '.swiper-scrollbar',
},
})