Ответ 1
code {
background: black;
color: white;
display: inline-block;
vertical-align: middle;
}
<p>Some text <code>A<br />B<br />C<br />D</code> continues afterward.</p>
Я хочу создать встроенный блок, который будет использовать неизвестную ширину и высоту. (В нем будет таблица внутри с динамически созданным контентом). Кроме того, встроенный блок должен быть помещен внутри строки текста, например "мой текст (BLOCK HERE)". Чтобы он выглядел красиво, Я пытаюсь сделать блок вертикально центрированным в строке. Поэтому, если блок выглядит следующим образом:
TOP
MIDDLE
BOTTOM
Затем строка текста будет читать: "Мой текст ([MIDDLE])" (с TOP и BOTTOM выше и ниже строки)
Вот что я до сих пор.
.example {
background-color: #0A0;
display: inline-block;
margin: 2px;
padding: 2px;
position: relative;
text-align: center;
}
<div class="example">TOP<br />MIDDLE<br />BOTTOM</div>
code {
background: black;
color: white;
display: inline-block;
vertical-align: middle;
}
<p>Some text <code>A<br />B<br />C<br />D</code> continues afterward.</p>
display: inline-block
- ваш друг, вам просто нужны все три части конструкции - раньше, "блок", после - один, затем вы можете вертикально выровнять их по середине:
(в любом случае это выглядит как ваша фотография;))
CSS
p, div {
display: inline-block;
vertical-align: middle;
}
p, div {
display: inline !ie7; /* hack for IE7 and below */
}
table {
background: #000;
color: #fff;
font-size: 16px;
font-weight: bold; margin: 0 10px;
}
td {
padding: 5px;
text-align: center;
}
HTML:
<p>some text</p>
<div>
<table summary="">
<tr><td>A</td></tr>
<tr><td>B</td></tr>
<tr><td>C</td></tr>
<tr><td>D</td></tr>
</table>
</div>
<p>continues afterwards</p>