没有出现在span标记的背景图象

时间:2011-09-28 11:01:59

标签: html css html5 css3

我在使用span标记时出现问题,显示Windows 7上最新FF中的背景图像。 它似乎工作并在早期的FF,Chrome,Safari和IE中显示一切正常,但手持设备和Windows 7似乎失败了。

很抱歉,如果这看起来模糊不清我只是想弄明白,图片原本是没有指定高度的pngs,而且我自己制作了GIF并应用了一个高度。

<span class="design">Design Viz</span>
<style>
.design  {
    background:url(_includes/images/agenda-design.gif) no-repeat top left;
    display: inline-block;
    height: 17px;
    padding-left:25px;
}
</style>

5 个答案:

答案 0 :(得分:55)

background-image CSS属性仅将图像作为背景。对象的宽度和高度始终通过CSS /内联样式的静态设置或显示在其中的内容的实际大小来定义。 在您的情况下,由于您没有在标记之间添加任何内容,因此其x / y维度将为0,但背景中没有任何错误。就在那里,只有你不能看到它,除非你(以某种方式)定义元素的大小。

<span class="design">Design Viz</span>
.design  {
padding-left:25px;
background:url(_includes/images/agenda-design.gif) no-repeat top left;
display: inline-block;
height: 17px;
width: 50px;
}

50可以是适合您案例的任何有用价值。

答案 1 :(得分:1)

显示:内联块; IE7不支持。你可以通过添加:

来修复它
.design  {
    padding-left:25px;
    background:url(_includes/images/agenda-design.gif) no-repeat top left;
    display: inline-block;
    height: 17px;
    width: 50px;
    zoom: 1;
    *display:inline;
}

答案 2 :(得分:0)

如果声明背景图像,则无法设置属性no-repeat top left。在background-image中,您只能设置指向图片的链接。

或者您可以像这样使用background

background: url(...) no-repeat top left

答案 3 :(得分:0)

使用像

这样的填充
 padding-left:25px;
    padding-top: 6px;
    padding-bottom: 10px;
    padding-right: 5px;

答案 4 :(得分:-1)

添加宽度:17px到您的css样式(或任何宽度)