我有一个轻微的CSS问题。
我有一系列分层div,我设置了div类样式,它们都显示出来(填充,字体颜色等)。但是,背景颜色不适用于重叠的div。
作为测试,我尝试设置边框和边框样式,它们都工作得很好,除了边框颜色,它没有显示,并且额外样式的边框保持黑色。
每个div都有一个唯一的id,而背景颜色不工作的那个div在容器div中嵌套(并排)。我一直试图了解嵌套的div是否采用父div的背景颜色,但我试图改变父级的溢出,并且它没有任何影响。
作为一种解决方法,我创建了一个正确背景颜色的1 x 1px jpg,并设置divs背景图像,这是有效的。但它是一个黑客,我不知道为什么所有的风格元素都有效,除了背景颜色。
我希望我已经充分解释了我的情况,如果有人能帮助我,我会很感激。
(另外,作为一个补充,我使用Dreamweaver编写代码,背景颜色显示在预览模式中,但不会显示在firefox,chrome或IE中)
请求代码:
<div id="longBox">
<div id="specialLable"> Rent Specials & promotions</div><!--end specialLable-->
<div id="promoMain">
<div id="proHeader">Alhambra Village Fall Special:</div><!--end proHeader-->
<div id="proDate">Expires: Date</div><!--end proDate-->
<div id="clear"></div>
<div id="protext">This is where the details go</div><!--end protext-->
<div id="promoConditions"><br />Limited availability. All promotions subject to change. Not good with other offers or promotions unless specified.</div><!--end promoConditions-->
<div id="proContact">Request an Appointment</div><!--end proContact-->
</div><!--end specialLable-->
</div><!--end longBox-->
#longBox{
width:713px;
height:225px;
background-color:#FFFFFF;
float:left;
margin:1.2em 0 0 .7em;
}
#specialLable{
background-image:url(../images/01titleBar.png);
margin: .5em .5em .5em .5em;
width:689px;
height:30px;
font-size:1.2em;
font-weight:bold;
text-transform:uppercase;
color:#667b90;
padding:3px 0 0 6px;
}
#promoMain{
margin: 0 .5em .5em .6em;
background-color:#ced5da;
height:166px
}
#proHeader{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
color:#CC6666;
float:left;
padding:.3em .6em .3em .6em;
margin:.6em 0 0 .6em;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
width:503px;
}
#proDate{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
color:#CC6666;
float:right;
width:150px;
padding:.3em .6em .3em .6em;
margin:.6em .6em .6em 0;
}
#protext{
font-size:11px;
text-align:left;
margin:0 .6em 0 .6em;
height:80px;
background:ffffff;
padding:0 0 0 .6em;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
}
#promoConditions{
font-size:9px;
text-align:left;
line-height:100%;
float:left;
padding:0 .6em 0 .6em;
margin:.6em 0 0 .6em;
width:503px;
}
#proContact{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
color:#CC6666;
float:right;
width:150px;
padding:.3em .6em .3em .6em;
margin:.6em .6em 0 0;
}
答案 0 :(得分:1)
图像工作的原因是因为它们是为孩子定义的新属性。父母从来没有一个BG的IMG,因此当你摆脱继承结构时,使用1x1彩色pxel hack肯定会有效。总之:
尝试以下方法:
#longBox{
width:713px;
height:225px;
background-color:#FFFFFF;
float:left;
margin:1.2em 0 0 .7em;
}
div#specialLable{
background-image:url(../images/01titleBar.png);
margin: .5em .5em .5em .5em;
width:689px;
height:30px;
font-size:1.2em;
font-weight:bold;
text-transform:uppercase;
color:#667b90;
padding:3px 0 0 6px;
}
div#promoMain{
margin: 0 .5em .5em .6em;
background-color:#ced5da;
height:166px
}
div#proHeader{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
color:#CC6666;
float:left;
padding:.3em .6em .3em .6em;
margin:.6em 0 0 .6em;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
width:503px;
}
div#proDate{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
color:#CC6666;
float:right;
width:150px;
padding:.3em .6em .3em .6em;
margin:.6em .6em .6em 0;
}
div#protext{
font-size:11px;
text-align:left;
margin:0 .6em 0 .6em;
height:80px;
background: #ffffff;
padding:0 0 0 .6em;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
}
div#promoConditions{
font-size:9px;
text-align:left;
line-height:100%;
float:left;
padding:0 .6em 0 .6em;
margin:.6em 0 0 .6em;
width:503px;
}
div#proContact{
font-size:11px;
text-align:left;
font-weight:bold;
text-transform:uppercase;
background-image:url(/images/images/bgwhite.jpg);
background-repeat:repeat;
color:#CC6666;
float:right;
width:150px;
padding:.3em .6em .3em .6em;
margin:.6em .6em 0 0;
}
答案 1 :(得分:0)
你有像Firebug这样的插件吗?这有助于向您展示可能覆盖背景颜色的任何规则。
另外,请确保在十六进制颜色编号之前加入#
。 (例如:#ffffff
)
...看起来你正在使用id来选择CSS,这是最具体的,因此它只能被以下内容覆盖:1)CSS中的另一个id选择器,或者2)选择器CSS中的任何地方都带有id和类或标记名称,从而提高了它的特异性。 (CSS specificity made simple here)
答案 2 :(得分:0)
检查您的定位...有时,当继承父属性时,对类或ID的显式指令是不够的。
所以,请指定:
#yourid {background-color: #333;}
如果其父级指定了背景,则可能不够。
您可能需要像
那样执行element.IDdiv#yourid {background-color: #333;}
抓住我的漂移?
编辑:
是的,我可以看到孩子们继承自#longBox
。如我之前提到的那样,最好是你的目标。此外,需要验证缺少的hash / pound / tic tac toe事物,但大多数浏览器应该解释格式错误的CSS。