div中的中心文本

时间:2014-02-27 02:18:01

标签: css html alignment

我有一个进度框,我想在中心对齐'标题'。

我认为盒子本身是相当直接的:

<div id="progressContainer" class="progressBox">
<div id="pbar" class="ui-progressbar ui-widget ui-widget-content ui-corner-all" role="progressbar" aria-valuemin="0" aria-valuemax="100" aria-valuenow="1">
<div class="progress-label">
    Step 1 of 4
</div>
<div class="ui-progressbar-value ui-widget-header ui-corner-left" style="width: 1%;">
</div>
</div>
    <ul id="progress">
       <li id="step0" class="current">Details <span></span></li>
       <li id="step1">Details<span></span></li>
       <li id="step2">Details<span></span></li>
       <li id="step3">Details<span></span></li>
    </ul>
</div>

标题的css:

.progress-label {
color: #000;
position: absolute;
top: 2px;
font-weight: bold;
}

添加text-align:center;margin:0 auto;等似乎无效。 添加Left:33%;确实使其大致居中,但并非所有屏幕宽度。

有人能指出我做错了吗?

jsfiddle here

感谢。

4 个答案:

答案 0 :(得分:2)

删除position: absolute; top: 2px;以使其居中。

A working demo

答案 1 :(得分:1)

为什么这个div绝对定位?只需删除position: absolute;,然后text-align: center;将按预期工作。

答案 2 :(得分:0)

尝试删除位置:绝对

.progress-label {
 color: #444;
 top: 2px;
 font-weight: bold;
 text-align:center;
}

答案 3 :(得分:0)

只需在主div中添加此样式

.progressBox {
     position: absolute;
     left: 50%;
     margin-left: -50px;    
 }

工作演示http://jsfiddle.net/e7CEK/9/