Je ne peux pas mettre le texte au milieu de l'image avec laquelle il se trouve.
Voici ce que j'écris dans le HTML:
#languages {
display: grid;
grid-template-columns: repeat(4, 1fr);
font-size: 22px;
gap: 30px;
padding: 20px 0 0 0;
}
Voici ce que j'écris dans le CSS:
.languagesIcons {
width: 55px;
margin: 0 10px 0 0;
}
Tout cela s'exécute dans un <div> dont son CSS est:
<p><img class="languagesIcons" src="img/x.png">x</p>
3 Réponses :
Pour aligner verticalement le texte et l'image, utilisez:
<p>
<img class="languagesIcons" src="img/x.png" style="vertical-align: middle;" >
<span style="vertical-align: middle;" >x</span>
</p>
Vous devez utiliser position:absolute sur l'image et le texte placé dans un span par exemple et utiliser position:relative sur le conteneur qui est ici la balise ap. Ensuite, vous pouvez ajuster sa position avec transform:translateY() par exemple. Voir le code ci-dessous:
<div><p><img class="languagesIcons" src="img/x.png"><span>x</span></p></div>
p{
position:relative
}
.languagesIcons {
width: 55px;
margin: 0 10px 0 0;
position:absolute
}
div{
display: grid;
grid-template-columns: repeat(4, 1fr);
font-size: 22px;
gap: 30px;
padding: 20px 0 0 0;
}
span{
position:absolute;
transform:translateY(50%)
}Pour être honnête, je n'avais besoin que du span + css que vous avez fait, merci beaucoup ♥
Vous pouvez simplement ajouter vertical-align: middle à votre classe languageIcons:
.languageIcons{
width:55px;
margin: 0 10px 0 0;
vertical-align:middle;
}
Ecrit dans la première ligne ..., je veux mettre le texte à mi-hauteur de la photo.