这是我的代码:如何将水平填充添加到一个多行包装语句中的每一行?
<div><p><span>... highlighted text ...</span></p><p>Chapter info</p></div>
这是它目前的样子:
http://i48.tinypic.com/2dqvo1i.png
有没有办法来添加填充到高亮文本的立场吗? SPAN上的常规填充不起作用,因为它只考虑句子的开始和结束,而不是单独分开每行。
任何想法? CSS3代码很好。
这是我的代码:如何将水平填充添加到一个多行包装语句中的每一行?
<div><p><span>... highlighted text ...</span></p><p>Chapter info</p></div>
这是它目前的样子:
http://i48.tinypic.com/2dqvo1i.png
有没有办法来添加填充到高亮文本的立场吗? SPAN上的常规填充不起作用,因为它只考虑句子的开始和结束,而不是单独分开每行。
任何想法? CSS3代码很好。
挣扎了一段时间后,我发现与旧版本浏览器一个像样的回退非古怪的解决方案 - 将两个CSS3,阴影文本行:
span {
background:#ff0;color:#000;
box-shadow:0.2em 0 0 #ff0,-0.2em 0 0 #ff0;
-moz-box-shadow:0.2em 0 0 #ff0,-0.2em 0 0 #ff0;
-webkit-box-shadow:0.2em 0 0 #ff0,-0.2em 0 0 #ff0;
}
谢谢。正是我在找什么。 – Marc 2011-12-13 19:51:35
似乎是唯一的方法。这是完美的 – Ben 2012-07-13 09:52:48
这对于一项常见任务来说确实是一个非常棒的简单解决方案。 – klickreflex 2012-10-05 08:13:57
只需填充环绕跨度的“p”标签即可。 “p”标签(与span不同)是块级元素,因此顶部,底部或侧面的填充将按预期工作。
尝试inline-block
。它不会在任何超过IE8(though there are some work arounds)更早的版本,但一切流行的应该是罚款:
p span {
display: inline-block;
padding: 0 2em;
}
white-space: pre-wrap;
不是一个真正的解决方案,但在休息前添加一些空间。
谢谢。这确实不能解决问题,但增加的空间确实帮助我实现了我的目标。 – Marc 2010-11-04 17:24:50
添加两个CSS3,阴影作为代替建议,这里是一个更简单的答案:
使用display:block
<span>
是display:inline
默认情况下,所以边框和填充您添加没有实际影响它的大小。所以只有第一行受到影响。
使用display:block
的跨度和<span>
现在的作品像<p>
和<div>
。
这里有一个很好的解释: http://quirksmode.org/css/css2/display.html
这不是OP想要的...如果你这样做,没有“突出”效果,它看起来像一个简单的盒子。 – Arkana 2013-05-28 08:58:21
终于找到了出路这种痛苦。为我工作。像这样使用左侧的按钮。
<p>
<button class="blankspace">
</button>
<span>
</span>
</p>
和CSS它像
.blankspace {
background: none;
opacity: 0.0;
outline:0;
text-decoration: none;
width: 2%;
height: 80%;
margin:0 auto;
float:left;
text-align:right;
padding:0%;
font-size:2px;
}
只是为了澄清,你找换行文本的每一行以不同的方式填补?如果没有,为什么不把填充应用到div标签? – JohnFx 2010-06-22 20:40:49
以及我差不多一年后,但我正在寻找完全相同的东西.. – pasine 2011-03-25 15:43:45
看看这个解决方案 - http://stackoverflow.com/a/34660112/483779 – Stickers 2016-04-05 22:50:53