如果它在行尾,我怎么能让逗号消失?

Hay*_*iff 0 html css responsive-design

我希望在我的网页上设置一个逗号,这样,如果它位于中间的文本被分割,使得逗号出现在该行的末尾,则逗号消失.我怎样才能做到这一点?


你问我为什么要这么奇怪?我有一个街道地址,我想在宽视口上看起来像这样:

1600 Pennsylvania Ave,Washington,DC 20500

...但是在较窄的视口上,我希望它看起来像这样:

1600 Pennsylvania Ave
Washington,DC 20500

我已经得到它总是在正确的点使用分割文本white-space: nowrap;,但我不知道如何防止这个讨厌的逗号出现在地址的第一行的末尾.

hun*_*tar 6

将地址的每个部分包裹在一个<span>.然后使用伪元素在较大的屏幕上添加逗号.

.address span {
    display: block;
}    
@media( min-width: 480px ) {
    .address span {
        display: inline;
    }
    .address span:after {
        content: ', ';
    }
    .address span:last-of-type:after {
        content: '';
    }
}
Run Code Online (Sandbox Code Playgroud)
<div class="address">
    <span>1600 Pennsylvania Ave</span>
    <span>Washington, DC 20500</span>
</div>
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/bukwpthg/

编辑

合并了Paulie_D的建议.CSS现在支持多行/跨度而不是两行.它将为<span>除最后一个之外的每一个添加逗号.

<div class="address">
    <span>1600 Pennsylvania Ave</span>
    <span>Washington</span>
    <span>DC 20500</span>
</div>
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/bukwpthg/3/

  • 可能我建议一个替代....你在*每个*span**之后放一个逗号除了**最后一个...然后它适用于多行地址 - http://jsfiddle.net/bukwpthg/2/ (2认同)