我有一个div
,我需要以垂直方式对齐文字,例如列表(ul
/ li
)。我已经尝试过列表,表格单元格,段落和其他一些内容但没有成功。我的大多数尝试都会导致结果超出我的内容 - .header
和.headerright
。
这是我的精简代码:
HTML:
<div class="header">
<div class="headerleft">
</div>
<div class="headerright">
Line 1 Text
Line 2
</div>
</div>
CSS:
div.header {
height:75px;
background-color:#FFF;
padding-left:10px;
padding-right: 10px;
}
div.headerleft {
border: none;
float: left;
margin: 0;
padding: 0;
line-height: 75px;
}
div.headerright {
border: none;
float: right;
margin: 0;
padding: 0;
line-height: 75px;
}
我需要的是“Line 1 Text”和“Line 2”这样的文字,就像在“Line 1 Text”下出现的“Line 2”一样。这个文本块应该在包含div的中心,“Line 2”应该在“Line 1 Text”的中心,如下所示:
第1行文字
第2行
我唯一关注的浏览器是IE9。如何才能做到这一点?我很难过。
答案 0 :(得分:1)
将您的文字放在span
元素中。它对我有用。
CSS:
div.headerright {
border: none;
float: right;
margin: 0;
padding: 0;
}
/* css rule to display span elements. */
span{
display:block;
}
HTML:
<div class="header">
<div class="headerleft">
</div>
<div class="headerright">
<span>Line 1 Text</span>
<span>Line 2</span>
</div>
</div>
答案 1 :(得分:0)
您的问题似乎已经尝试多次更改您的HTML。一种非常简单的方法是添加<br />
and use text-align:center
。
HTML:
<div class="header">
<div class="headerleft">
</div>
<div class="headerright">
Line 1 Text<br /> <!-- Added break tag -->
Line 2
</div>
</div>
CSS:
.headerright{
border: none;
float: right;
margin: 0;
padding: 0;
line-height: 75px;
text-align: center; /* add this */
}