J'utilise font awesome sur certains projets mais j'ai certaines choses que je veux faire avec des icônes font awesome, je peux facilement appeler une icône comme celle-ci:
<i class="fa fa-lock"></i>
Est-il possible que toutes les icônes soient toujours en cercle rond avec bordure? Quelque chose comme ça, j'ai une photo:
En utilisant
i {
background-color: white;
border-radius: 50%;
border: 1x solid grey;
padding: 10px;
}
Cela fera-t-il l'effet, mais le problème est que les icônes sont toujours plus grandes que le texte ou l'élément à côté, des solutions?
css
font-awesome
Schneider
la source
la source
border-radius
devrait arrondir l'élément. Quel navigateur utilisez-vous? mettra à jour ma réponse avec des préfixesi
a du contenu. Habituellement, avec FA, vous n'avez pas de contenu dans l'i-tag, mais l'icône est rendue par CSS plus tard:<i class="fa fa-lock"></i>
et c'est ce que @Schneider a réellement demandé.Avec Font Awesome, vous pouvez facilement utiliser des icônes empilées comme celle-ci:
référer Font Awesome Stacked Icons
Mise à jour: - Violon pour les icônes empilées
la source
<span class="fa-stack fa-lg"> <i class="fa fa-circle-thin fa-stack-2x"></i> <i class="fa fa-stack-1x">1</i> </span>
Vous n'avez pas besoin d'astuces css ou html pour cela. Font Awesome a construit une classe pour cela - fa-circle Pour empiler plusieurs icônes ensemble, vous pouvez utiliser la classe fa-stack sur le div parent
// Et nous avons maintenant l'icône facebook à l'intérieur du cercle :)
la source
Icône de police dans un cercle en utilisant
em
comme mesure de basesi vous utilisez ems pour les mesures, y compris
line-height
,font-size
etborder-radius
, avectext-align: center
cela rend les choses assez solides:la source
Mettre à jour: utilisez plutôt flex.
Si vous voulez de la précision, c'est la voie à suivre.
Violon. Allez jouer -> http://jsfiddle.net/atilkan/zxjcrhga/
Voici le HTML
Voici le CSS
S'amuser
la source
Vous pouvez également le faire. Je voulais ajouter un cercle autour de mes icônes icomoon. Voici le code.
la source
MISE À JOUR :
Lors de l'apprentissage de flex récemment, il existe un moyen plus propre (pas de tables et moins de css). Définissez le wrapper comme
display: flex;
et pour centrer ses enfants, donnez-lui les propriétésalign-items: center;
dejustify-content: center;
centrage (vertical) et (horizontal).Voir ce JS Fiddle mis à jour
Etrange que personne n'ait suggéré cela avant .. J'utilise toujours des tableaux pour faire cela.
Faites simplement un emballage
display: table
et centrez-le à l'intérieur avectext-align: center
pour l'vertical-align: middle
alignement horizontal et vertical.et des sass comme ça
ou voir ce JS Fiddle
la source
C'est l'approche que vous n'avez pas besoin d'utiliser
padding
, définissez simplementheight
etwidth
pour lea
et laissez laflex
poignée avecmargin: 0 auto
.la source
L'exemple ci-dessous n'a pas vraiment fonctionné pour moi, c'est la version que j'ai faite fonctionner!
HTML:
CSS:
la source
essaye ça
HTML:
CSS:
la source
Les icônes Font Awesome sont insérées comme un: avant. Par conséquent, vous pouvez styliser votre i ou un similaire ainsi:
la source
Vous pouvez simplement obtenir une icône ronde en utilisant ce code:
Maintenant, votre CSS sera:
la source
J'aime la réponse de Dave Everitt avec la «hauteur de ligne» mais cela ne fonctionne qu'en spécifiant la «hauteur» et ensuite il faut ajouter «! Important» à la hauteur de ligne ...
la source
!important
est un pansement, pas une solution. Cela signifie que vous avez une autre propriété CSS ailleurs que sur votre propriété.C'est la solution la meilleure et la plus précise que j'ai trouvée jusqu'à présent.
CSS:
la source