Пожалуйста, запустите демо:
* {
margin:0;
padding:0;
}
.body {
font-family:Microsoft Yahei;
font-size:16px;
background-color:lightblue;
height: 200px;
width:200px;
line-height:2;
}
.body span {
background-color:pink;
}
.body img {
width:50px;
height:50px;
}
.body .img-wrapper {
background-color:orange;
}
.body .img-wrapper {
vertical-align:middle;
}
<div class="body">
<span class="wrapper">
words-g words-g words-g
<span class="img-wrapper">
<img src="https://avatars3.githubusercontent.com/u/23273077" alt="">
s
</span>
words-g words-g words-g
</span>
</div>
Дело в том, что я установил
.body .img-wrapper {
vertical-align:middle;
}
Я ожидал, что красные линии на рисунке ниже находятся в той же строке: ![enter image description here](https://i.stack.imgur.com/FTdu2.png)
В соответствии со спецификацией ,
Совместите вертикальную среднюю точку бокса с базовой линией родительского бокса плюс половинуx-высота родителя.
Итак, я думаю:
- вертикальная средняя точка прямоугольника - это первая красная линия на рисунке выше и
- базовая линия родительского блока плюс половина x-высоты родителя = вторая красная линия
Но, оказывается, я ошибаюсь, и я предполагаю, что ключ равен x-heightродителя . Итак, я нашел это: ![enter image description here](https://i.stack.imgur.com/uSRNW.png)
Итак, я подумал, х-высота родителя в этом случае невторая красная линия из-за существования изображения.
Итак, мой вопрос:
Обратите внимание:
Я просто хочу получить значение x-height
в этом случае, чтобы я мог лучше понять vertical-align
.
Я не прошу конкретного решения.
В любом случае спасибо за вашу помощь!