<div class="meter">
<span style="width:72%"></span>
<p></p>
</div>
div.meter {
position: relative;
width: 250px;
height: 25px;
border: 1px solid #b0b0b0;
margin-top: 50px;
/* viewing purposes */
margin-left: 100px;
/* viewing purposes */
box-shadow: inset 0 3px 5px 0 #d3d0d0;
box-shadow: inset 0 3px 5px 0 #d3d0d0;
box-shadow: inset 0 3px 5px 0 #d3d0d0;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
}
div.meter span {
display: block;
height: 100%;
animation: grower 1s linear;
animation: grower 1s linear;
animation: grower 1s linear;
animation: grower 1s linear;
position: relative;
top: -1px;
left: -1px;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
border-radius: 3px;
box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
box-shadow: inset 0px 3px 5px 0px rgba(0, 0, 0, 0.2);
border: 1px solid #3c84ad;
background: #6eb2d1;
background-image: gradient(linear, 0 0, 100% 100%, color-stop(0.25, rgba(255, 255, 255, 0.2)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.2)), color-stop(0.75, rgba(255, 255, 255, 0.2)), color-stop(0.75, transparent), to(transparent));
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.2) 50%, rgba(255, 255, 255, 0.2) 75%, transparent 75%, transparent);
background-size: 45px 45px;
background-size: 45px 45px;
background-size: 45px 45px;
background-size: 45px 45px;
}
div.meter span:before {
content: '';
display: block;
width: 100%;
height: 50%;
position: relative;
top: 50%;
background: rgba(0, 0, 0, 0.03);
}
div.meter p {
position: absolute;
top: 0;
margin: 0 10px;
line-height: 25px;
font-family: 'Helvetica';
font-weight: bold;
font-smoothing: antialised;
font-size: 15px;
color: #333;
text-shadow: 0 1px rgba(255, 255, 255, 0.6);
}
@keyframes grower {
0% {
width: 0%;
}
}
@-moz-keyframes grower {
0% {
width: 0%;
}
}
@-webkit-keyframes grower {
0% {
width: 0%;
}
}
@-o-keyframes grower {
0% {
width: 0%;
}
}
var bar = $('span');
var p = $('p');
var width = bar.attr('style');
width = width.replace("width:", "");
width = width.substr(0, width.length-1);
var interval;
var start = 0;
var end = parseInt(width);
var current = start;
var countUp = function() {
current++;
p.html(current + "%");
if (current === end) {
clearInterval(interval);
}
};
interval = setInterval(countUp, (1000 / (end + 1)));
This Pen doesn't use any external CSS resources.