相关疑难解决方法(0)

使用CSS使用填充为文本创建高亮效果

我正在尝试使用换行符创建突出显示的文本效果.

例:

高亮文字效果

我无法弄清楚如何在文本中添加填充.这是包含文本的span元素的CSS:

background: none repeat scroll 0 0 #1B1615;
display: inline;
font-size: 15px;
line-height: 24px;
padding-left: 5px;
Run Code Online (Sandbox Code Playgroud)

添加填充时,它只在文本开头和结尾添加填充,如下所示:

添加了填充

CSS:

background: none repeat scroll 0 0 #1B1615;
display: inline;
font-size: 15px;
line-height: 3em;
padding: 10px;
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何实现这一目标?

css css3

15
推荐指数
4
解决办法
3万
查看次数

跨度背景颜色和填充问题

我有一个我想要实现的设计,涉及标题文本以其自己的背景颜色出现,填充10px,在图像上,例如:

http://i.stack.imgur.com/E7EpS.png

这张图中的第一个例子效果很好,很简单:

.greenbox {width:520px; height:261px; position:relative;}
.greenbox span { padding:0 10px; background:#000; position:absolute; left:0; bottom:40px; }
Run Code Online (Sandbox Code Playgroud)

当文本溢出到另一行时出现麻烦,然后span元素填充不会影响换行符上的文本,它呈现如下:

http://i.stack.imgur.com/pY18f.png

任何人都知道一个替代品,或者他们如何设置这个设计,以便背景颜色和填充是一致的?

提前致谢

编辑:我已经简化了代码,使其简洁,但错过了一个重要的部分.实际上它是这样的:

.greenbox {width:520px; height:261px; position:relative;}
.greenbox a {position:absolute; left:0; bottom:40px; }
.greenbox span { padding:0 10px; background:#000; }
Run Code Online (Sandbox Code Playgroud)

用html作为:

<div class="greenbox">

    <a href="link"><span>The Title Goes Here</span></a>

</div>
Run Code Online (Sandbox Code Playgroud)

因此,跨度保持内联,包裹在绝对位置锚中.

css

12
推荐指数
1
解决办法
2万
查看次数

环绕的文本背景与不同行上的其他文本重叠

我在使用 css 设置行高 + 文本背景样式时遇到问题。

<style>
.wrap  {
    width: 70%; 
    line-height:0.9;
}
.hl {

        background-color: orange;
}
</style>
<div class="wrap">
       <span class="hl">
          Some content will go here which will be split into several lines depending of resolution (depending on width of wraper)
       </span>
</div>
Run Code Online (Sandbox Code Playgroud)

我有动态文本,根据浏览器宽度换行到多行此文本的行高小于“正常”。当我将背景颜色应用于文本时,此背景会与降序字母的底部重叠:g,p,y,q,j

在此处输入图片说明 似乎文本在浏览器中呈现,使得文本的第二行/下行(及其背景颜色)位于第一行/上行文本的前面,因此第二行的背景位于降序字母的前面到行高。

每一行都有一个新的背景,因为我们正在谈论一个内联元素。我当然需要使用内联元素来获取文本背景。我需要用css或者JS解决这个问题,不改变文本的文本行高。

附加信息:我在这里找到了一个很好的答案: 在每行文本的开头和结尾添加填充

由三十点回答(问题正下方的接受答案),但是如果您查看他的现场演示解决方案,并将那里的 line-height 更改为较小的值,您将遇到与我相同的问题。 演示

css fonts

8
推荐指数
1
解决办法
4239
查看次数

每行的开头和结尾都有相同的填充

我有一个span元素,里面有一些文字.我希望文本具有纯色背景颜色以及使用相同数量的填充开始/结束每一行.

这个jsfiddle显示了这个问题:http: //jsfiddle.net/VwsQg/

我发现了这个非常相似的问题:在每行文本的开头和结尾添加填充,但我也需要在每一行之间留出一些空格.

这张图片说明了我想要完成的结果:

在此输入图像描述

先感谢您.

html javascript css

7
推荐指数
1
解决办法
295
查看次数

避免在应用了背景颜色的内联元素中重叠行

我得到了一个与这个小提琴相关的CSS问题:http ://jsfiddle.net/r584e/
这里有相关的截图

行高:1em(左)和0.8em(右)

有时我必须以这种方式设置内联元素的样式,试图几乎避免行之间的空间并仅在文本下应用背景.如您所见,第一段内部有一个链接,我在其中设置line-height: 1em.右边的段落改为a line-height: 0.8em;.(注意:我知道这样我可以粗略地剪切一些字母 - 比如q,g,p,......但是文字是大写的,所以这不是一个真正的问题)

在第二段中,行实际上更接近(如我所愿)但不幸的是每一行也与前一行部分重叠(除非你删除了应用的背景颜色)并且这不好(例如,请参阅底部的"大写"字样) ,所以这里我的问题:

  1. 如何让行更接近(如右边的段落),而不会相互重叠并定义背景颜色(无论应用它的元素,但它必须保留在文本下面,而不是填充整个块)
  2. 可选地,有一种方法可以为每行文本添加水平填充?

随意更改CSS和/或标记.我正在寻找一个纯CSS的解决方法.
最佳解决方案应该适用于现代浏览器,如果可能的话,至少应该使用IE8 +

先感谢您.=)

编辑:
关于第二个问题,使用@thirtydot解决方案我可以使用white-space: pre-wrapspan元素上的应用添加空间(右侧)

html css css3

5
推荐指数
1
解决办法
2952
查看次数

仅在文本周围的背景颜色

由于div的固定宽度,我在一个div中有一个H1超过1行.我想仅将背景颜色设置为H1文本,以便背景仅保留在文本后面(例如,如果行的末尾有空白空间,则不应使用背景颜色).

另外,我需要设置左右填充文本.我试图将填充设置为标题但它也不起作用.

这是我想要得到的:

在此输入图像描述

我试图通过设置inlineH1 的显示和设置背景颜色来实现这一点,但它似乎不起作用.以下是我的HTML和CSS以及演示.

HTML:

<div class="box">
    <h1>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin eget massa felis, at aliquam libero. </h1>
Run Code Online (Sandbox Code Playgroud)

CSS:

.box{
    background: green;
    overflow: hidden;
    max-width: 100px;
    margin: 50px auto;
    padding: 20px;
}

h1{   
    background: yellow;
    font-size: 30px;   
    float: left;
    display: inline;   
}
Run Code Online (Sandbox Code Playgroud)

演示:http://jsfiddle.net/BQMXa/

html css

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

css ×6

html ×3

css3 ×2

fonts ×1

javascript ×1