html - 如何在具有多个背景的 CSS3 中重复图像?

标签 html css


我正在做一个元素,我必须在容器的背景上放置一个曲线图像。我为此使用了三张图片——我使用了一张顶部图像、一张在 y 轴上可重复的中间图像和一张底部图像。问题是容器宽度 (1028px) 是固定的,但高度是可扩展的。

因此,中间图像位于容器底部图像的顶部,看起来像 this .

但我希望它看起来像this .

这是我的顶部、中间和底部图像:

我正在使用 CSS3 多背景图像属性。

HTML:

<div class="map clearfix">
      <div class="mpbg"></div>
</div>

CSS:

.map {
  float: left;
  background:url("../../img/mpbg-bt-1028-205.png") no-repeat left bottom, url("../../img/mpbg-top-1028-205.png") no-repeat left top;
  margin: -30px 0 20px 0;
  z-index:999;
  width: 1028px;
}

.map .mpbg {
  float: left;
  margin:10px 0 20px 0;
  background: url('../../img/googlemap-996-380.jpg') no-repeat 17px 0, url("../../img/mpbg-mid-1028.png") repeat-y;
  width: 1028px;
  height: 380px;
}

最佳答案

如果要包含 map ,容器的高度是否必须是可扩展的?很难按照您的设计要求制作具有不规则形状的可扩展盒子。

我认为最好的办法是让盒子的中间部分的最小高度等于顶部和底部图像的组合高度:

.map .mpbg {
    min-height: 410px;/* Insert the actual correct value here */
}

这在 IE 6 中不起作用,但在 IE 6 中,height 属性实际上与 min-height 功能相同,因此在您的 IE 6 样式表中,添加此规则:

.map .mpbg {
    height: 410px;/* Works around lack of support for min-height */
}

关于html - 如何在具有多个背景的 CSS3 中重复图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4723439/

相关文章:

javascript - 如何完成我的模态ajax代码才能正常工作?

javascript - 如何使用jquery将表单的目标设置为fancybox?

javascript - jquery 验证无法使用 jquery 验证插件

css - 无法使用 css 在列表项中设置覆盖

css - 如何使用 animated.css 放大此图像

javascript - JQuery 范围 slider 工具提示

html - 如何用边界边上的链接创建一个圆

javascript - 内联 Javascript 单击功能,用于在 chrome 扩展中动态添加具有动态 id 的元素

html - 克服 FireFox/IE 垂直滚动条渲染差异

html - 如何为 Youtube 嵌入式播放器创建自定义框架?