overflow: hidden + display: le bloc en ligne déplace le texte vers le haut

J’ai le code HTML suivant:

abc

Ce que j’attends de voir: abc .

Ce que je vois (dans Chrome, Safari, Firefox): abc

b est supérieur à a et c . Pourquoi il en est ainsi et comment le réparer?

Cela se produit parce que l’élément inline-block a une hauteur égale à son parent et à son overflow: hidden entraîne l’alignement de son bord inférieur sur la ligne de base du texte du parent. En conséquence, l’espace disponible pour les descendants sur le texte est essentiellement doublé pour le ( JSFiddle ).

Vous pouvez résoudre ce problème en lui donnant également l’ vertical-align: bottom .