JSFiddle - React, Tailwind, and code Playground

by zerrax

HTML

<div class="car">

<div id="carsl" class="carsl">
  <div class="carousel" name="items" style="margin-left:0;" id="carsl1">
  <ul>
  <li>
        <div>
    <a>Mr Robot</a>
    <ul id="star-rating">
<li class="rated">1</li>
<li class="rated">2</li>
<li class="rated">3</li>
<li>4</li>
<li>5</li>
</ul>
    <a>2012</a>
    <div>
      <p>
          “Proven Innocent” racconta la storia emotiva della lotta di una donna per dimostrare l’innocenza di persone condannate ingiustamente. Il dramma legale segue una sfortunata società di difesa criminale guidata da un avvocato feroce e intransigente, Madeline Scott, che è stato ingiustamente condannato in un caso di omicidio sensazionale che l’ha resa una famigerata ossessione mediatica. Madeline gestisce lo studio legale con il suo socio, Easy Boudreau, l’avvocato che l’ha aiutata a liberarsi dopo 10 anni di carcere. Il loro team comprende anche l’investigatore Bodie Quick e il direttore delle comunicazioni Violet Price, che gestisce un vero podcast criminale che segue ogni indagine.
      </p>
    </div>
     <span><a href="google.fr"></a></span>
    </div>
  </li>
  <li>
        <div>
    <a>Mr Robot</a>
    <ul id="star-rating">
<li class="rated">1</li>
<li class="rated">2</li>
<li class="rated">3</li>
<li>4</li>
<li>5</li>
</ul>
    <a>2012</a>
    <div>
      <p>
          “Proven Innocent” racconta la storia emotiva della lotta di una donna per dimostrare l’innocenza di persone condannate ingiustamente. Il dramma legale segue una sfortunata società di difesa criminale guidata da un avvocato feroce e intransigente, Madeline Scott, che è stato ingiustamente condannato in un caso di omicidio sensazionale che l’ha resa una famigerata ossessione mediatica. Madeline gestisce lo studio legale con il suo socio, Easy Boudreau, l’avvocato che l’ha aiutata a liberarsi dopo 10 anni di carcere. Il loro team comprende anche l’investigatore Bodie Quick e il direttore delle comunicazioni Violet Price, che gestisce un vero podcast...

CSS

body{

  padding:0;
  margin:0;
  background:#222;

}
.car{margin:20px 10px;position:relative}
.carsl{
  width:100%;
  overflow:hidden;
  display: inline-box;
  display: -webkit-inline-box;
}
.carsl > div{
  width: 100%;
  float:left;
  position:relative;
    -webkit-transition: all 0.5s; /* Safari */
  transition: all 0.5s;
}
.carousel > ul {
  display: flex;
  padding:20px;
  grid-gap: 10px;
}
.carousel > ul > li {
  flex: 1;
  background-color: #fff;
  border-radius: 3px;
  padding: 20px;
  font-size: 14px;
  float:left;
  text-align: center;
  //border: 2px solid #FFF;
  background: #DDD;
  border-radius: 3px;
  font-size: 14px;
  height:200px;
  position:relative;

   background: url(https://pictures.betaseries.com/fonds/banner/6622_1415360495.jpg) no-repeat center ; 
  -webkit-background-size: cover; /* pour anciens Chrome et Safari */
  background-size: cover; /* version standardisée */

  -webkit-transition: all 1s; /* Safari */
  transition: all 1s;

    font-family:Arial, Helvetica, sans-serif;
}
.carousel > ul > li:hover {
  flex: 2;
  z-index: 1;
  height:270px;
  margin-top:-35px;
}
.hid {
  display:none;}
.info {
  text-align: center;
  font-size: 13px;
  padding-top: 20px;
  color: #fff;
}
.carousel > ul > li > div{
  opacity:0;
  position: absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  background-color:rgba(0,0,0,0.8);
  border-radius: 5px;
  padding:5px;
  -webkit-transition: opacity 0.7s; /* Safari */
  transition: opacity 0.7s;
  text-align:left;

}
#star-rating {
  display:block;
  position: absolute;
  top:5px;
  text-align: center;
  right:5px;
  padding:0;
  margin:0;
}
#star-rating li {
    display: inline;
    color: transparent;
    margin:0;
    padding:0;
}
#star-rating li:after {
    content: '\2605';
    color: #888;
    padding-right: 1px;
    font-size: 1.2em
}
#star-rating li.rated:after {
    content: '\2605';
    color: #dd0;
    padding-right: 1px;
}
.carousel > ul > li > div > span {
  background-image:...

JavaScript

function next(a)
{
var i="";
var els = document.getElementById("carsl").childNodes;

	els.forEach(function(element)
  {
  console.log(element)
    if(element.tagName == "DIV")
    {
    	i++;
    } 
  });
  var el = document.getElementById("carsl1");
  if(isNaN(parseInt(el.style.marginLeft)))
  {
  	el.style.marginLeft = "-0%";
  	el.style.left =   "-0%"; 
  }
  else
  {
    var num = (Math.abs(parseInt(el.style.marginLeft)) + 100);
    console.log(i*100);
    if(i*100 == num)
    {
    	el.style.marginLeft = "0%";
      el.style.left = "0%"; 
    }
    else
    {
      el.style.marginLeft = "-"+num+"%";
      el.style.left = "-"+num+"%"; 
    }
  }

}