JSFiddle - React, Tailwind, and code Playground
by AJIEKCEU
HTML
<link href="https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,700&subset=cyrillic,cyrillic-ext" rel="stylesheet">
<div class="line">
<div class="toddler" title="250"></div>
<div class="line__active"></div>
</div>
<div class="percents">
<div class="percents__item">
<div class="percent">5%</div>
<div class="sum">1000 рублей</div>
</div>
<div class="percents__item">
<div class="percent">4%</div>
<div class="sum">750 рублей</div>
</div>
<div class="percents__item">
<div class="percent">3%</div>
<div class="sum">500 рублей</div>
</div>
<div class="percents__item">
<div class="percent">2%</div>
<div class="sum">250 рублей</div>
</div>
<div class="percents__item">
<div class="percent">1%</div>
<div class="sum">10 рублей</div>
</div>
</div>
CSS
html *{
box-sizing: border-box;
text-size-adjust: 100%;
font-size: 100%;
}
body{
font-family: 'Open Sans Condensed', sans-serif;
}
.line{
position: relative;
width: 8px;
height: 346px;
background-color: #cacaca;
float: left;
}
.line__active{
position: absolute;
width: 8px;
height: 0;
bottom: 0;
background-color: #4c9e45;
}
.toddler{
position: absolute;
left: 50%;
margin-left: -8px;
width: 16px;
height: 4px;
border: 1px solid white;
background-color: #4c9e45;
bottom: 0;
}
.percents{
float: left;
margin-left: 15px;
}
.percents__item{
margin-bottom: 36px;
color: #707070;
}
.percents__item:last-child{
margin-bottom: 0;
}
.percent{
font-size: 20px;
line-height: 17px;
font-weight: 700;
}
.sum{
font-size: 18px;
}
JavaScript
var col = $('.toddler').attr('title'),
total = col/10;
if(col < 100){
$('.line__active').css('height','8%');
$('.toddler').css('bottom','8%');
}
else{
$('.line__active').css('height',total+'%')
$('.toddler').css('bottom', total+'%');
}