css格式化值

时间:2011-09-11 10:04:18

标签: php css alignment

我正在尝试调整值。代码是,

<section class="message success">
      Variable1: Value1<br/>
      Variable2 : Value2<br/>  
</section>

.message.success {
border: 1px solid #b8c97b;
background-color: #e5edc4;
background-image: -o-linear-gradient(top,  #e5edc4,  #d9e4ac);
background-image: -ms-linear-gradient(top,  #e5edc4,  #d9e4ac);
background-image: -moz-linear-gradient(top,  #e5edc4,  #d9e4ac);
background-image: -webkit-gradient(linear, left top, left bottom, from(#e5edc4), to(#d9e4ac));
background-image: -webkit-linear-gradient(top,  #e5edc4,  #d9e4ac);
background-image: linear-gradient(top,  #e5edc4,  #d9e4ac);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e5edc4', endColorstr='#d9e4ac');
color: #3f7227;
text-shadow: 0 1px 1px #fff;
}

我希望这些值正确对齐,

Variable1    :     Value1
Variable2    :     Value2

感谢。

4 个答案:

答案 0 :(得分:2)

最好使用表格如下:

<table class="message success">
    <tr>
        <td class="var">Variable1</td>
        <td class="sem">:</td>
        <td class="val">Value1</td>
    </tr>
    <tr>
        <td class="var">Variable2</td>
        <td class="sem">:</td>
        <td class="val">Value2</td>
    </tr>
</table>

然后使用css你可以这样对齐:

.val {width:100px;}
.sem {width:40px;}
.var {width:100px;}

查看实时示例:http://jsfiddle.net/nayish/uenzN/2/

答案 1 :(得分:1)

实际上我无法理解你想要做什么,但也许你应该使用表格:

<table border="0">
<tr><td>Variable1:</td> <td>Value1</td></tr>
<tr><td>Variable2:</td> <td>Value2</td></tr>
</table>

答案 2 :(得分:1)

CSS:

.variable { margin-right : 40px; display: inline-block; width: 120px; }
.value { margin-left : 40px; display: inline-block; width: 120px; }

PHP代码:

echo '<span class="variable">'.$variable1.'</span>:<span class="value">'.$value1.'</span><br />';
echo '<span class="variable">'.$variable1.'</span>:<span class="value">'.$value1.'</span><br />';

......等等......

您还可以将CSS3伪类用作:

span { display: inline-block; width: 120px; }
span:nth-child(odd) { margin-right : 40px;}
span:nth-child(even) { margin-left : 40px;}

在这种情况下,您的PHP代码更轻:

echo '<span>'.$variable1.'</span>:<span>'.$value1.'</span><br />';
echo '<span>'.$variable2.'</span>:<span>'.$value2.'</span><br />';

......等等......

答案 3 :(得分:0)

如果输出键值对,我会使用定义列表。你的加价如下:

<dl>
  <dt>Variable 1</dt> <dd>Value 1</dd>
  <dt>Variable 2</dt> <dd>Value 2</dd>
</dl>

然后您可以使用CSS来设置此列表的样式:

dt {
    display: block;
    float: left;
    clear: left;
}
dd {
    margin-left: 5em; /* this will line up the values */
}
dd:before {
    content: ':';
}