用插入图制作宽度自适应的通栏banner,背景颜色怎么填充?

新手上路,请多包涵

用一张插入图在页面中居中制作通栏banner,想让插入图之外的其他宽度区域添加上其他背景颜色,但是直接添加不行。如果用min-width的话,只有插入图右边的部分可以添加,插入图左边还是没有背景颜色,应该怎么操作?谢谢!

banner在浏览器中效果如下:
clipboard.png

代码如下:.banner{

    height: 323px;
    position: relative;
}

.banner ul li{
    height: 323px;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -674px;
    display: none;
    min-width:100%;
    background-color: yellow;
}
.banner ul li.current{
    display: block;
}
阅读 3.2k
1 个回答
✓ 已被采纳新手上路,请多包涵

经过试验,把定位给img而不是li就可以啦。

不给li 定位,li的宽度还是100%,所以给li 添加背景颜色的时候,会整个添加。而给img定位刚好定到中间。定位的又会压盖没有定位的。所以显示中间图片,两边颜色填充。而此时min-width 可以不写。
就是把之前的代码从给li定位转为给img定位。 至于最早的时候给li 直接定位的时候,因为定位是从左上角定的,所以左上角定了之后,他的宽度就是从他左上角定位那个位置开始往右,往右的宽度为内部img的宽度。所以直接给他添加背景颜色的时候,他的img全部覆盖了他的背景颜色。所以在浏览器的显示效果就是两边都没有添加背景颜色。
还是在给li直接定位的基础上,加min-width:100%的时候,本来li 的宽度是从他定位的位置开始,往右内部img的宽度的。因为给li设置了最小宽度为100%,而li的开始位置又是从定位初开始的。所以添加背景颜色的区域为从li定位的位置到最最右边。100%,即body盒子右边的最大宽度。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题