Je positionne une icône à l'intérieur d'un bouton. Pour aligner l'icône sur la droite du bouton, j'utilise la commande float: right
sur l'icône. Mais comme vous le verrez, cela fait déborder l'icône sur Firefox, il me faut donc une autre solution.
Points à noter
- Je veux que le texte du bouton soit aligné au centre, donc en ajoutant
float: left
au texte n'est pas une option - L'icône doit être flottante à droite du bouton.
Voici le Sass
pour l'icône et le bouton :
.icon-icomoon
font-family: 'icomoon' !important
speak: none
font-style: normal
font-weight: normal
font-variant: normal
text-transform: none
line-height: 1
-webkit-font-smoothing: antialiased
-moz-osx-font-smoothing: grayscale
.icon-arrow-right:before
content: "\e910"
.btn
border-radius: 0
padding: 20px 40px
font-weight: 600
font-family: $fontSansSerif
font-size: 1.9em
span.icon-arrow-right
float: right
font-size: 40px
.mobile-and-tablet-only
display: none
@media screen and (max-width: $mediaBreakpointTablet)
display: block
.desktop-only
display: none
@media screen and (min-width: $mediaBreakpointTablet+1)
display: block
Voici le HTML
pour le bouton :
<a href="#" class="btn btn-success">
<span class="desktop-only">
Let's make something awesome together
<span class="icon-icomoon icon-arrow-right"></span>
</span>
<span class="mobile-and-tablet-only">
Let's work together
<span class="icon-icomoon icon-arrow-right"></span>
</span>
</a>
Voici à quoi cela ressemble dans le navigateur sur Chrome :
Et voici à quoi cela ressemble sur Firefox. Comme vous pouvez le constater, la largeur du texte est de 100 %, ce qui fait que l'icône déborde :