<div class="carrousel">
  <div class="scrollpane">
    <div class="card"> <img src="//s.svgbox.net/hero-outline.svg?fill=805ad5#cloud"></div>
    <div class="card"><img src="https://s2.svgbox.net/hero-outline.svg?ic=academic-cap&color=c31d1d"></div>
    <div class="card"><img src="https://s2.svgbox.net/weather-icons.svg?ic=day-cloudy-high&color=c31d1d"></div>
    <div class="card"><img src="//s.svgbox.net/hero-outline.svg?fill=fff#bell" alt="bell"></div>
    <div class="card"> <img src="//s.svgbox.net/hero-outline.svg?fill=805ad5#beaker"></div>
    <div class="card"><img src="//s.svgbox.net/hero-outline.svg?fill=805ad5#cog" alt=""></div>
    <div class="card"> <img src="//s.svgbox.net/hero-outline.svg?fill=805ad5#chat"></div>
    <div class="card"> <img src="//s.svgbox.net/hero-outline.svg?fill=805ad5#cloud-download"></div>

  </div>
</div>

body {
    margin: 0;
    height: 100vh;
    background: rgb(36,40,49);
    color: white;
    display: grid;
    place-content: center;
    overflow : hidden;
}

.scrollpane {
  width : 45vw;
  padding: 10px;
  display: flex;

  /* Active la force d'adhérence sur l'axe des X */
  scroll-snap-type: x mandatory;

  /* Affiche la barre de défilement */
  overflow-x: scroll;
}

.card {
  background-color: black;
  width: 250px;
  height: 150px;

  /* Espacement entre les */
  margin-right: 20px;

  /* Conserve la taille des cartes (items) */
  flex: 0 0 auto;

  /* Aligne le défilement au centre */
  scroll-snap-align: center;
}

img {
  width: 100%;
  height: 100%;
  object-fit: fill;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.