Comment faire pour que le "x" soit aligné verticalement au milieu de la travée?
.foo {
height: 50px;
border: solid black 1px;
display: inline-block;
vertical-align: middle;
}
<span class="foo">
x
</span>
Utilisez line-height:50px;
au lieu de la hauteur. Cela devrait faire l'affaire ;)
Sachez que l'
line-height
approche échoue si vous avez une longue phrase dans lespan
qui rompt la ligne car il n'y a pas assez d'espace. Dans ce cas, vous auriez deux lignes avec un espace avec la hauteur des N pixels spécifiés dans la propriété.Je suis resté dedans lorsque je voulais montrer une image avec du texte centré verticalement sur son côté droit qui fonctionne dans une application Web réactive. Comme base, j'utilise l'approche suggérée par Eric Nickus et Felipe Tadeo.
Si vous souhaitez atteindre:
et ça:
la source
C'est le moyen le plus simple de le faire si vous avez besoin de plusieurs lignes. Enveloppez votre
span
texte dans un autrespan
et spécifiez sa hauteur avecline-height
. Le tour à plusieurs lignes est la réinitialisation de l'intérieurspan
s »line-height
.DEMO
Bien sûr, l'extérieur
span
pourrait être undiv
ou quoila source
span
s, comme tout autre élément en ligne, peut contenir n'importe quel élément HTML en ligne . Quoi qu'il en soit, j'ai écrit que celatextvalignmiddle
peut être undiv
si nécessaire (et vous pouvez le définirdisplay:inline;
si vous êtes si opposé à l'utilisationspans
)span
est le conteneur en ligne générique pour html et n'indique pas qu'il s'agit uniquement de texte; `Il peut être utilisé pour regrouper des éléments à des fins de style ...`. Je suggère de lire les spécifications avant de pousser vos normes de codage personnelles sur les autres en les déclarant comme des faitsLa manière flexbox:
la source
.foo
est un spandisplay: flex-inline
conviendrait mieuxJ'en avais besoin pour les liens, j'ai donc enveloppé le span avec une balise a et un div, puis centré la balise span elle-même
HTML
CSS
la source
Texte et image centrale verticale CSS
J'ai Créer une démo pour le centre d'image vertical et le texte.J'ai également testé sur Firefox, Chrome, Safari, Internet Explorer 9 et 8 aussi.
C'est très court et facile css et html, veuillez vérifier le code ci-dessous et vous pouvez trouver la sortie sur screenshort.
HTML
CSS
Sortie entrez la description de l'image ici
la source
cela fonctionne pour moi (Keltex a dit la même chose)
la source
L'attribut css vertical-align ne fait malheureusement pas ce que vous attendez. Cet article explique 2 façons d'aligner verticalement un élément à l'aide de css.
la source
Définissez padding-top comme une valeur appropriée pour pousser le x vers le bas, puis soustrayez la valeur que vous avez pour padding-top de la hauteur.
la source