[HTML] Line-height non funziona ç_ç

Koboshi

Nuovo Utente
7 Mag 2018
9
0
1
30
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>
 

WmbertSea

Utente Attivo
28 Nov 2014
211
33
28
Ciao, ho testato il tuo codice e devo dire che inizialmente non sono riuscito a riprodurre il problema. In sostanza non vedevo lo "spicchio" che hai menzionato ma vedevo regolarmente l'icona tonda con un bordo attorno. Ho provato poi a variare qualche valore e ho capito che quel bordo non dovrebbe esserci, o almeno è ciò che ti aspetti (se ho capito bene).

Presumo che questo bordo (che forse può apparire come uno spicchio a seconda di come viene renderizzato il carattere stesso) dipenda dal fatto che l'icona (carattere) non si allinei e non si dimensioni perfettamente col contenitore. C'è da tener conto che, essendo un carattere, la sua grafica interna (nonostante sia un cerchio) potrebbe non corrispondere esattamente con i limiti della dimensione del carattere stesso o potrebbe comunque non essere così regolare. Inoltre questo, essendo un carattere, può essere trattato in modo differente da un normale elemento (come può essere un div) perché potrebbe subire delle "regolazioni" legate alla gestione del rendering propria degli elementi di testo che vengono visualizzati a schermo. Posso pensare quindi a funzioni che migliorano la leggibilità, a funzioni di antialiasing, allo zoom e altre varie caratteristiche che sono gestite del browser o addirittura del sistema operativo.

Detto questo, penso che sarebbe inutile cercare di far coincidere perfettamente i due "cerchi" (quello dell'icona/font con quello creato col div), potresti però risolvere in modi alternativi.

Uno tra vari è quello di cambiare icona, cioè usare quella analoga senza cerchio (che ha nome angle-up) opportunamente centrata nel div. A quel punto il cerchio sarà creato dal div stesso. Ovviamente i colori risulteranno invertiti per cui ti basterà riassegnarli opportunamente sullo stato normale e sull'hover.

Prova quindi a modificare l'elemento <i> in questo modo:
Codice:
<i class="fas fa-angle-up"></i>
e applicare questo CSS:
Codice:
#toTop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 30px;
    z-index: 99;
    background-color: #ffc11e;
    color: #fff;
    cursor: pointer;
    font-size: 40px;
    border-radius: 50%;
    height: 40px;
    width: 40px;
    line-height: 1;
    text-align: center;
}
#toTop:hover {
    background-color: #fff;
    color: #ffc11e;
}
#toTop>i {
    line-height: 0;
}

Prova e vedi se può andare.
 

Koboshi

Nuovo Utente
7 Mag 2018
9
0
1
30
Sì, è perfetto. Non so come ho fatto a non pensarci, mi sento proprio scema. Ti ringrazio tantissimo!
 
Discussioni simili
Autore Titolo Forum Risposte Data
R Immagini html HTML e CSS 1
K File audio in html, chi mi può aiutare? HTML e CSS 0
K Aiuto con file audio in html HTML e CSS 1
Antonio67 Lanciare file shell bash da html HTML e CSS 2
M Riportare in tabella HTML dati estratti con query SQL MySQL 0
G Codice html Javascript 1
M Collegamento tra form html e script php PHP 4
L Ricezione dei dati su file php da modulo html PHP 6
F Creare elementi html con javascript Javascript 4
G Appicazione HTML per inserimento dai in Database Access Microsoft HTML e CSS 0
W visualizzare solo file html e sottocartelle di una cartella PHP 1
C Dopo chiusura del tag php la stringa html va a capo PHP 1
G img html HTML e CSS 3
M Come fare un countdown in HTML? HTML e CSS 4
D Stampa a video in altra pagina html Database 3
A inserire variabile php colore in div html PHP 2
F Tv in html Offerte e Richieste di Lavoro e/o Collaborazione 1
N Script elenco file HTML HTML e CSS 5
L salvare codice html in mysql PHP 3
Cosina htaccess redirect 301 senza estensione html Web Server 6
E Errore di lettura php in html PHP 8
M HTML e PHP Offerte e Richieste di Lavoro e/o Collaborazione 3
C Form email php su pagina index.html? PHP 21
Shyson Meglio Javascript o HTML? Javascript 4
P inserimento icone social tramite html HTML e CSS 1
Z Mod_rewrite da HTML in PHP PHP 3
L Collegare un form html ad un database access Javascript 2
P HTML integrazione wordpress HTML e CSS 0
C [RISOLTO]Inserimento variabile php in input html PHP 20
L Eliminare estensione .html HTML e CSS 9
max1974 html in tooltip Javascript 0
C Risalire al php da html PHP 27
felino Esportare tabella HTML in PDF, quale libreria usare? Javascript 1
webmachine [PHP] [JAVASCRIPT] Form strano in HTML PHP PHP 1
L [RISOLTO] Stampa a video risultato count in html PHP 13
V Servizio design pagina web e download in self contained html file Discussioni Varie 1
F [PHP] Form html PHP 2
G Aiuto HTML, collegamento con un bottone a una <div> di un' altra pagna HTML e CSS 5
R Aiuto sito html Offerte e Richieste di Lavoro e/o Collaborazione 3
M Estrarre dati da una select HTML PHP 3
G FORM HTML E PHP PHP 0
max1974 [HTML] Columns grid on modal form HTML e CSS 0
tomorc [HTML] Problema con scroll bar (risolto) HTML e CSS 0
F [PHP] [HTML] Tabella cambia pagina responsive PHP 8
M [PHP] [HTML] Centrare in verticale un pulsante in una tabella PHP 3
S [HTML] Effetto su testo da togliere HTML e CSS 0
M [PHP] Istruzione "echo" all'interno di codice html PHP 2
D [HTML] Aiutino su costruzione tabella :) HTML e CSS 3
diamantetredici13 [HTML] link e poi link... HTML e CSS 2
P [HTML] Problema ERR_INCOMPLETE_CHUNKED_ENCODING 206 (Partial Content) con Font HTML e CSS 1

Discussioni simili