#page-header {
display: table;
font-size: 26px;
margin-bottom: 30px;
}
#page-header div {
display: table-cell;
vertical-align: middle;
}
.fontHelvetica {
font-family: "Trebuchet MS",Helvetica,sans-serif;
}
<div id="page-header">
<div class="fontHelvetica">Social<span class="fontLightMaroon">Network</span></div>
<div><input type="submit" value="Upload" name="upload"></div>
</div>
我想将中间的按钮与文本“SocialNetwork”对齐。字体大小可能会改变,因此按钮应在中间对齐。 我正在使用上面的代码。
答案 0 :(得分:1)
删除div
按钮的input
包装,并为input
提供如下样式。无论font-size
是什么,按钮都将保持与中间垂直对齐。
#page-header {
display: table;
font-size: 26px;
margin-bottom: 30px;
}
#page-header div {
display: table-cell;
vertical-align: middle;
}
#page-header input {
vertical-align: middle;
display: table-cell;
margin: -5px 0 0 5px;
}
.fontHelvetica {
font-family: "Trebuchet MS", Helvetica, sans-serif;
}
<div id="page-header">
<div class="fontHelvetica">Social<span class="fontLightMaroon">Network</span></div>
<input type="submit" value="Upload" name="upload" />
</div>
不同的示例 font-size
:
#page-header {
display: table;
font-size: 36px;
margin-bottom: 30px;
}
#page-header div {
display: table-cell;
vertical-align: middle;
}
#page-header input {
vertical-align: middle;
display: table-cell;
margin: -5px 0 0 5px;
}
.fontHelvetica {
font-family: "Trebuchet MS", Helvetica, sans-serif;
}
<div id="page-header">
<div class="fontHelvetica">Social<span class="fontLightMaroon">Network</span>
</div>
<input type="submit" value="Upload" name="upload" />
</div>
答案 1 :(得分:0)
问题在于display:table-cell,它不允许在第一个div之后进行换行。
我在这里创建了一个小提琴,打破了这一行,使按钮被视为“文本”块(显示:内联块),并将其与中心对齐
text-align: center;
答案 2 :(得分:0)
我有插入css属性display:inline-block; font-size:2em;在fontHelvetica类
中
#page-header {
display: table;
font-size: 26px;
margin-bottom: 30px;
}
#page-header div {
display: inline-block;
vertical-align: middle;
}
.fontHelvetica {
font-family: "Trebuchet MS",Helvetica,sans-serif;
display:inline-block;
font-size:2em;
}
&#13;
<div id="page-header">
<div class="fontHelvetica">Social<span class="fontLightMaroon">Network</span></div>
<input type="submit" value="Upload" name="upload" />
</div>
&#13;
答案 3 :(得分:0)
问题是<input>
没有正确接收继承字体大小/行高,这取决于浏览器和操作系统。您可以做的是仅在“SocialNetwork”上设置大字体,即
#page-header {font-size: 26px;} /*remove this*/
.fontHelvetica {font-size:26px;} /*add this*/