html - 带背景的页脚和带透明度的图像显示正文背景而不是页脚背景

标签 html css

所以我有一个有趣的设计元素,它被证明是很难用一些 HTML 和 CSS 看起来正确的。我的页脚中有一张透明图像,应该显示正文背景,但页脚也有背景图像。它应该看起来像这样:

我最初的想法是像这样使用负边距: Footer

问题是合作伙伴图像获取左右 div 的背景图像,即使有边距。它最终看起来像这样: Broken Footer

CSS:

.footer-partners { width: 100%; }
.footer-partners-left,
.footer-partners-mid,
.footer-partners-right { float: left; height: 122px; }
.footer-partners-left,
.footer-partners-right { background: url('../img/partners-bg.png'); }
.footer-partners-left { width: 50%; margin-right: -83px; }
.footer-partners-mid { width: 164px; background: url('../img/partners.png') no-repeat; overflow: hidden; text-indent: -99999px; }
.footer-partners-right { width: 50%; margin-left: -81px; }

HTML:

<div class="footer-partners clearfix">
    <div class="footer-partners-left"></div>
    <div class="footer-partners-mid"></div>
    <div class="footer-partners-right"></div>
</div>

我的想法是背景不显示在页边距上,所以负边距应该为透明图像腾出空间并且也不会在那里显示背景。不幸的是,背景仍然显示在边缘。这是一个问题的唯一原因是页脚背景需要跨越页面宽度的 100%。

最佳答案

我能够通过对 CSS 进行以下更改来解决此问题。所需要做的就是将负边距切换到页面外部,而不是中心。

.footer-partners { width: 100%; }
.footer-partners-left,
.footer-partners-mid,
.footer-partners-right { float: left; height: 122px; }
.footer-partners-left,
.footer-partners-right { width: 50%; background: url('../img/partners-bg.png'); }
.footer-partners-left { margin-left: -83px; }
.footer-partners-mid { width: 164px; background: url('../img/partners.png') no-repeat; overflow: hidden; text-indent: -99999px; }
.footer-partners-right { margin-right: -81px; }

关于html - 带背景的页脚和带透明度的图像显示正文背景而不是页脚背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21653720/

相关文章:

html - 如何让内容垂直流动

javascript - 强制 iframe 加载全帧

html - 背景幻灯片问题

javascript - video标签不支持youtube视频。我想在我的视频应用程序中同时使用youtube和azure媒体服务链接。我使用<video>标签

html - CSS 中 `box-sizing` 按钮"]` 的 `input[type="问题?

html - 如何在 Firefox 中正确呈现@font-face?

css - Bootstrap,Roots 主题 - 移动 View 右侧的间隙

css - 如何使用 CSS 隐藏元素一段时间?

jquery - 显示 TableView 结构

javascript - 使用 jChartFX 改变饼图比例