2010-08-11 114 views
1

我有一个奇怪的问题。本着尝试编写DRYer,更短代码的精神,我想从我个人的h3样式中删除'不重复',并且只用一个声明来完成。以下是失败代码的示例版本。 #c中的h3固执地不会停止重复,除非我像#a和#b那样设置它。
我试过替换背景重复:没有:没有重复,但没有运气。在此先感谢您的帮助!为什么我不能停止背景重复:从重复?

.class > h3 
    { 
     float:left; 
     height:21px; 
     width:200px; 
     margin-bottom:10px; 
    } 

    #a > h3 {background:url(a.png) no-repeat;} 
    #b > h3 {background:url(b.png) no-repeat;} 
    #c > h3 {background:url(c.png);} 

    /* EDIT: this code does not work (even after applying Thom's answer)  
    h3 {background-repeat:none;} 
    */ 

    h3 {background-repeat:no-repeat;} 

回答

5

background是一个简写声明,设定数量的值。它覆盖您的background-repeat声明。改为使用background-image代替#c > h3background声明。

+0

那么,一切正常了!谢谢汤姆。我有一种感觉,这是沿着这条线。 – 2010-08-11 18:10:27

3

为什么不会背景重复:没有工作?

因为它的命名no-repeat :)

+0

你读过这个问题了吗? '我尝试过替换背景 - 重复:没有:没有重复,但没有运气“,或者你的意思是{不重复:无}或类似的东西?我从保罗爱尔兰的http://html5boilerplate.com/css文件中获取背景重复:无,因此它必须有一定用处。 – 2010-08-11 18:02:51

+0

背景重复:现在没有任何工作正常,我实施了Thom的答案。也许我的下一个问题应该是“为什么背景重复:没有工作?”大声笑。 – 2010-08-11 18:11:43

+0

似乎w3学校的css引用同意你的说法。 http://www.w3schools.com/css/pr_background-repeat.asp。现在我不知道使用哪一个:-( – 2010-08-11 18:17:00

0

行,background-repeat:无它不是一个有效的属性。你有重复不重复重复-X重复-Y继承从父元素继承财产,但没有不存在。也许它会适用于浏览器,如Chrome和Firefox,试图找出你的意思,但IE浏览器对此很挑剔。