7

我有一个同时具有背景图像和文本的类,我试图找出一种方法来操纵仅文本上方的空间,使用“边距”标签将改变整个事物的位置(图像+文本) ,我只需要控制文本。

text-indent 让我对水平间距有一些控制,我需要一些东西来更好地控制文本上方和下方的空间,只有当这种东西存在时。

这是 CSS 类:

.contactb { float:left; margin:0 5px 0 0; padding:0 0; background:url(images/contact_b.png) top no-repeat; display:block; width:108px; height:57px; font-family: 'hand-webfont'; color:black; font-size:17px; }

这是HTML代码:

<li><a href="contact.html" class="contactb">Contact</a></li>

任何帮助将不胜感激。

4

3 回答 3

6

您正在寻找的只是“填充”。

.myClass {
 padding-top:10px
 padding-bottom:10px;
}
于 2012-08-16T19:10:50.070 回答
1

这是我认为您正在尝试做的一个工作示例:http: //jsfiddle.net/yhV78/

诀窍:

  1. 创建一个包含您的背景图像的 div(在我的情况下,背景是兔子)
  2. 创建一个包含您的内容的内部 div(或一系列 div)。您可以通过调整内部 div 上的填充或通过相对定位和绝对定位的组合来定位它们。
于 2012-08-16T19:33:20.357 回答
1

诀窍是将 padding 与background-origin结合起来......虽然,它仅在支持 CSS3 的浏览器中受支持(不支持较旧的 IE 版本:< IE9)

背景来源:边框框;

加上适当的填充对我来说很好......(背景原点的默认值是填充框,这就是原因,单独填充对你不起作用......)

于 2014-01-30T11:41:25.617 回答