Ciau a tutti! Avevo bisogno di creare un tastino scroll-to-top per l'e-commerce che sto curando al momento. Per realizzarlo ho creato un div tondo con all'interno un'icona tonda, entrambi delle stesse dimensioni. L'icona è una della libreria di font awesome e di conseguenza si comporta come testo quindi per centrarla verticalmente ho usato line-height solo che dall'alto dell'icona spunta uno "spicchio" di div. Qualcuno di voi saprebbe dirmi come mai? Vi allego il codice e spero che qualcuno di voi possa aiutarmi a venir a capo del mio problema. Ringrazio sin da ora chiunque di voi vorrà provarci.
HTML:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento senza titolo</title>
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.0.13/css/all.css" integrity="sha384-DNOHZ68U8hZfKXOrtjWvjxusGo9WQnrNx2sqG0tfsghAvtVlRW3tvkXWZh58N9jp" crossorigin="anonymous">
<style>
#toTop {
display: none;
position: fixed;
bottom: 20px;
right: 30px;
z-index: 99;
background-color: #FFFFFF;
color: #ffc11e;
cursor: pointer;
font-size: 40px;
border-radius: 50%;
height: 40px;
width: 40px;
line-height: 40px;
}
#toTop:hover {
background-color: #ffc11e;
color: #fff;
}
</style>
</head>
<body>
<div onClick="topFunction()" id="toTop" title="Go to top"><i class="fas fa-chevron-circle-up"></i></div>
<div style="min-height: 2500px; background-color: #ccc"></div>
<script>
window.onscroll = function() {scrollFunction()};
function scrollFunction() {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
document.getElementById("toTop").style.display = "block";
} else {
document.getElementById("toTop").style.display = "none";
}
}
function topFunction() {
document.body.scrollTop = 0;
document.documentElement.scrollTop = 0;
}
</script>
</body>
</html>