8

如果我删除内部文本 xxx,下面的跨度将不是背景图像

<span style='background-image:url("http://gifsoup.com/web/images/soc4.gif")'  style="height: 30px;">
 xxx
</span>

但是,它在兼容模式下没有 xxx 也可以工作。

如何在没有任何内部文本的情况下使其工作?

4

3 回答 3

15

因为跨度默认为没有宽度或高度的内联元素。将 CSS 更改为:

span {
    display:inline-block;
    width:30px;
    background-image:url("http://gifsoup.com/web/images/soc4.gif");
    height:30px;
}

jsFiddle 示例

通过将显示从 inline 更改为 inline-block,您可以设置 span 的宽度和高度。

于 2013-04-17T19:42:01.950 回答
1

span 元素是一个内联元素,因此没有宽度或高度。您必须在元素 css 中指定它应该显示为块或内联块,然后指定图像的宽度和高度。

span{
    display: inline-block;
    background-image:url("http://gifsoup.com/web/images/soc4.gif");
    width:30px;
    height:30px;
    border-radius: 5px;
}

例子

于 2013-04-17T19:46:17.920 回答
0

需要加一个宽度,可能需要做display:inline-block,否则宽度为0,所以不可见。

于 2013-04-17T19:36:20.667 回答