我正在读一本关于CSS的书,这让我很困惑。我想垂直居中,这是我的代码:
img {
vertical-align: middle;
}
#mySpan {
background-color: red;
}
/* this works fine but when I type the code I first tried */
#mySpan {
background-color: red;
vertical-align: middle;
}
<p>
<img src="zemin.jpg" alt="Zemin">
<span id="mySpan">Align Vertically</span>
</p>
这不起作用。你能解释一下吗?为什么将align
设置为另一个元素但是直接将其设置为元素?
答案 0 :(得分:0)
此属性的全部内容是在文本中对齐图像(内联块)。它确定元素在文本流中的定位方式。在文本流程中对齐文本并没有多大意义,因为它 文本流。
如果你制作inline-block
,你可以将垂直对齐应用于范围,但我怀疑这是否是你喜欢的行为。下面是一些例子:
p {
background-color: #ffdddd;
line-height: 2em;
}
.mySpan {
background-color: red;
vertical-align: middle;
height: 1em;
display: inline-block;
}
.mySpan.top {
vertical-align: top;
height: 3em;
}
img {
vertical-align: middle;
}
#mySpan {
background-color: red;
}
&#13;
<p>
<img src="zemin.jpg" alt="Zemin">Normal text flow. <span class="mySpan">Align middle</span>. <span class="mySpan top">Align top.</span>Continuation of normal text flow
</p>
&#13;