使用CSS在包含div的两个div上显示背景图像

时间:2012-10-30 01:05:22

标签: css css3 html

如何使用css在包含div的背景图像上显示两个div,并为其背景图像添加颜色渐变? 我试图用asp.net页面做这个,生成的html看起来像这样:

<div id="TopContainer>
    <div id="logos">
        <div id="logoOne" class="ImgContainer"></div>
        <div id="logoTwo" class="ImgContainerWide"><div>
    </div>
</div>

相关的css看起来像这样:

/********************styles for bar across master page-logos,img containers etc.     ********************/
#TopContainer
{
    margin:0px;
    padding:0px;
    border-radius:15px;
}

#logos
{
    width:1024px;
    height:100px;
    border-radius:15px;
    color: -moz-linear-gradient(bottom, #297381, #FFFFFF);
    color: -ms-linear-gradient(bottom, #297381, #FFFFFF);
    color: -webkit-linear-gradient(bottom, #297381,#FFFFFF);
    background:-moz-linear-gradient(bottom, #297381,#FFFFFF);
    background:-ms-linear-gradient(bottom, #297381,#FFFFFF);
    background:-webkit-linear-gradient(bottom, #297381,#FFFFFF);

}

.ImgContainer
{
    background-image:url(~/images/company-logo.jpg);
    width:250px;
    opacity:0.55;
    border-radius:15px;
}

.ImgContainerWide
{
    background-image:url(~/images/company-logo.jpg);
    width:450px;
    opacity:0.55;
    border-radius:15px;
}

出于某种原因,具有图片背景的div似乎根本没有显示出来,因为当我使用Chrome开发者工具时,会制作&#34;徽标&#34 ; div透明,两个图像容器仍然不可见。提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

很可能它不起作用,因为〜只适用于asp.net服务器控件(服务器端),而不适用于客户端CSS。如果它是你的css中的一个目录,请改用

background-image:url(../images/company-logo.jpg); 

通常〜将您带到根应用程序,因此如果您想要转到根目录,只需使用/:

background-image:url(/images/company-logo.jpg);

最后,根据您的情况,您还可以使用绝对路径(而不是上面的相对路径),例如:

background-image:url(http://www.yourdomain.com/images/company-logo.jpg);