这是我的代码:
<div id="banner">
<h1 class="title">Sam Clark</h1> <img src="Images/twitter.png" width="35" height="35" alt="Twitter" id="twitter-img" />
</div>
图像显示在新行上...如何阻止此操作? 顺便说一句,我刚才意识到我不需要横向居中......抱歉。
答案 0 :(得分:2)
<h1>
元素是块级元素,这意味着默认情况下它将占用输入宽度。如果您希望图像与文本显示在同一行,则需要使用文本在里面元素中定义它。
<h1 align="center" class="title">
Sam Clark <img src="Images/twitter.png" width="35" height="35" alt="Twitter" id="twitter-img" />
</h1>
如果您尝试向左或向右浮动图像,则需要在 <h1>
元素之前将其定义为。
在一些游戏之后,我能够找到一种方法来垂直居中图像旁边的文本,同时还保持文本在标题内部的水平居中,但它涉及添加一个额外的(非语义)元素。
<h1 class="title">
<span><img src="Images/twitter.png" width="35" height="35" alt="Twitter" id="twitter-img" /> Sam Clark</span>
</h1>
h1.title {
text-align: center;
}
h1.title span {
display: inline-block;
line-height: 35px;
}
h1.title span img {
float: right;
margin-left: 7px;
}
答案 1 :(得分:0)
h1
会显示display
值block
。要更改此项,请使用此CSS:
#banner .h1 {
display: inline;
}
答案 2 :(得分:0)
<h1>
元素是块级元素。您可以选择非块级元素(例如<span>
)或更改<h1>
元素的样式并设置display:inline;
。
例如:
#banner h1.title {
display: inline;
}
另一种选择是将图像放在<h1>
标记内,然后将图像的vertical-align属性设置为中间。
<div id="banner">
<h1 align="center" class="title">Sam Clark <img src="Images/twitter.png" width="35" height="35" alt="Twitter" id="twitter-img" style="vertical-align:middle" /></h1>
</div>