删除换行符而不制作跨度块

时间:2017-02-24 15:46:22

标签: css

是否有任何CSS属性/解决方案可以防止每个<br>之间需要<span>

例如,而不是:

  HTML
<span>a</span>
<br>
<span>b</span>
<br>
<span>c</span>

有这样的事情:

  CSS
span{break-line:true}

  HTML
<span>a</span>
<span>b</span>
<span>c</span>

我知道我可以使用display:block但我不想改变跨度的大小。
为什么会出现这种情况会很糟糕的一个例子就是为跨度的背景着色

2 个答案:

答案 0 :(得分:2)

你可以使用float并清除它们:

&#13;
&#13;
span {
float: left;
clear: both;
background: #ddd;
}
&#13;
<span>a</span>
<span>b</span>
<span>c</span>
&#13;
&#13;
&#13;

答案 1 :(得分:2)

您可以将:after伪元素与white-space: pre;

一起使用

&#13;
&#13;
span:after {
  content: '\A'; /* a newline */
}
span {
  white-space: pre;
}
&#13;
<span>a</span>
<span>b</span>
<span>c</span>
&#13;
&#13;
&#13;