2011-07-18 24 views
0

根据Mozilla Developer Network自Firefox 3.6以来一直支持背景大小,但是,它显然不适用于我的OS X版本Firefox 5。它在Safari中看起来很好,但Firefox 5无法正确显示。有错误吗?为什么我不能在Firefox中使用它?CSS:无法获得背景大小:包含在Firefox 5中工作

HTML:

<span class="special button">My button</span> 

CSS:

.button { 
    background-size: contain; 
} 
.button.special { 
    background: url("/images/special-button-bg.png"); 
} 

Here is a jsfiddle这表明它不能正常工作。

+1

请发布失败的代码行。 – Joe

+0

自Firefox 4以来,只支持'background-size'。Firefox 3.6使用'-moz-background-size'。 – BoltClock

+0

如果它显示不正确,我肯定有东西必须失败... – BoltClock

回答

6

我不知道发生了什么事情,但它的作品,如果您有:

.button.special { 
    background: url("/images/special-button-bg.png"); 
    background-size: contain; 
} 

http://jsfiddle.net/nstV7/3/

我的猜测是,background属性重写background-size财产。但是,这并不能解释为什么Firefox的表现不如Safari。

+0

谢谢!你是一个拯救生命的人! – Andrew

+1

啊,讨厌的简写''背景'属性再次。 – BoltClock

+0

@BoltClock:是的,所以CSS3'背景'速记有点疯狂。它似乎只能在Opera中工作。 – thirtydot

0

我最近有这样的后续情况相同的问题: Win10 +火狐55.0.3 64its,背景图像不显示

我与其他一些浏览器测试是确定的,我可以看到图像。 例如:与Win10 + MS Edge和Win10 + IE11正确

工作,因为我不想使用JavaScript的供应商前缀(-moz-等) 我去W3C。组织试图寻找什么是错的,可惜我没找到解决办法,但我决定尝试申报的所有值:

我改变了这一点:

background-size: contain; 

进入这个:

background-size: contain contain; 

我发布并测试了,它的工作原理如下:

  1. Win10 + MS Edge
  2. Win10 + MS IE 11
  3. Win10 +火狐55/64位的
  4. Win10 +歌剧
  5. 赢服务器2008 +火狐55/32位
  6. 赢服务器2008 + MS IE 11
  7. 赢服务器2003 +火狐52/32位
  8. 赢服务器2003 + MS IE 6
  9. 运7 +火狐54/32位
  10. Win 7的+ MS IE 11

我希望这可以帮助别人,其希望避免使用浏览器脚本语言或供应商前缀。