文本仅与UL LI中的CSS对齐

时间:2013-09-27 19:47:16

标签: html css

我有html:

<ul>
    <li><span>text</span><span>to right</span></li>
        <li><span>text2 text2 text2 </span><span>to right</span></li>
        <li><span>text3</span><span>to right</span></li>
        <li><span>text4</span><span>to right</span></li>
        <li><span>text5text5text5</span><span>to right</span></li>
</ul>

和css:

ul li {
    width: 300px;
    background-color: #ff9999;
}

我想让li中的所有第二个跨度的文本对齐,但我无法修改html结构。我只能添加class或id。是否可以只使用CSS?

jsfiddle

4 个答案:

答案 0 :(得分:2)

你可以漂浮它们:

ul li span+span {
    float: right;
} 

http://jsfiddle.net/ePcDq/1/

答案 1 :(得分:1)

您可以尝试使用:nth-child伪选择器来选择第二个孩子,即span,并且可以放置您的CSS。

ul li span:nth-child(2)
{
    float:right;
}

Js Fiddle Demo

答案 2 :(得分:0)

您可以为每个 span 添加一个类,并添加到此类 float:right

答案 3 :(得分:0)

您可以添加一个类来延伸,例如

<span class='right'>to right</span

并将right类定义为

.right{
    float:right;
}

See jsFiddle in action