在未设置height和width的DIV中插入背景图片,如何修改代码,使DIV大小适应背景图片?

DIV:

<div id="header"></div>

CSS:

header{

background: url(../img/header23.png);

}

如何修改代码,使DIV被背景图片撑开?

阅读 6.3k
4 个回答

首先,谢邀

其次我想说,你这个需求我还真是没碰到过

稍微学了点布局的小伙伴应该都清楚,容器不设宽高一般来说都是由内容撑开容器,以达到占据文档流的目的,来完成相应的布局。

再有一点,作为背景图,是作为容器的一个属性存在的,并不是作为容器的内容,宽高padding这类以外的属性,其他的一般并不能撑开容器,你想要用这张图撑开容器的话,在我的现有知识下只能想到用img标签插入这张图,撑开容器达到模拟背景的目的,当然这么做的话其他元素只能选择浮动或者定位来排版了。也许其他大牛会有更好的方案,但是至少我是没办法实现你的这个需求。

如果你的图片的宽高比是已知的,可以用 padding 来实现。

计算出图片的宽高比,然后:

div {
  padding-bottom: 33%;
  background: url(../xxx.img);
}

以百分比定义的 padding 值总是以其宽度作为基准来计算具体的 padding 大小,所以可以很方便的用于已知背景图宽高比的情况以及响应式布局中。

要么固定div宽高.
要么改成img形式插入图片

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
1 篇内容引用
推荐问题
宣传栏