Div格式:垂直居中文本

时间:2012-09-05 17:30:07

标签: html css

这段代码创建了一个序列:块,文本,块,文本,块,文本,它看起来是正确的,除了我不能让文本在div的中心垂直对齐,所以它看起来像它的对齐旁边的盒子中心垂直。有什么建议吗?



    <div style="position: absolute; right: 0; top: 0; text-align: right;">
    <span style="display: inline-block; width: 15px; height: 15px; background: #2880BB"></span>                                     
    <span style="display: inline-block">Created   </span>                                            
    <span style="display: inline-block; width: 15px; height: 15px; background: #7FC31B"></span>
    <span style="margin-left: 5px;">Won   </span>
    <span style="display: inline-block; width: 15px; height: 15px; background: #FD2A2F"></span>
    <span style="margin-left: 5px;">Lost </span>
    </div>

7 个答案:

答案 0 :(得分:1)

替代解决方案:

<div style="position: absolute; right: 0; top: 0; text-align: right;">
    <span style="border-left: 15px solid #2880BB; padding-left: 5px;">Created</span>                                            

    <span style="border-left: 15px solid #7FC31B; margin-left: 5px; padding-left: 5px">Won</span>

    <span style="border-left: 15px solid #FD2A2F; margin-left: 5px; padding-left: 5px">Lost</span>
</div>​

jsFiddle http://jsfiddle.net/w2wVc/1/

答案 1 :(得分:0)

您可以使用line-height垂直居中,而不是身高。看看这段代码:

HTML:

<div class="vertical">
    Hello
</div>

CSS:

.vertical {line-height: 50px; border: 1px solid #f00;}

小提琴:http://jsfiddle.net/rv8pq/

答案 2 :(得分:0)

我在你的CSS中使用了position:relative和top:2px。根据要求更改顶部像素值。

<div style="position: absolute; right: 0; top: 0; text-align: right;">
<span style="display: inline-block; position:relative; top:2px; width: 15px; height: 15px; background: #2880BB"></span>                                     
<span style="display: inline-block">Created   </span>                                            
<span style="display: inline-block; position:relative; top:2px; width: 15px; height: 15px; background: #7FC31B"></span>
<span style="margin-left: 5px;">Won   </span>
<span style="display: inline-block; position:relative; top:2px; width: 15px; height: 15px; background: #FD2A2F"></span>
<span style="margin-left: 5px;">Lost </span>
</div>

答案 3 :(得分:0)

您可以尝试使用-ve页边距进行发送。 Here 是一个现场演示。

答案 4 :(得分:0)

我建议将每个<span>及其框放在一个div中,然后清除每个div

clear: right

答案 5 :(得分:0)

我已经尝试了很多次使用CSS并且从来没有运气(具有良好的跨浏览器支持)。我能够使用一些Jquery。

http://jsfiddle.net/EebmV/1/

你们可以去读书并使用桌子。表格单元格始终用于垂直对齐。

更新:

使用正确引用的Jquery库重新保存。

答案 6 :(得分:0)

我将div设置为display:table,跨度设置为display:table-cell,因此现在您可以在表格模式下设置vertical-align

http://jsfiddle.net/w2wVc/10/