html - 如何使 div 的高度和背景图像拉伸(stretch)以环绕 div 中的所有内容?

标签 html css twitter-bootstrap

我前段时间在做网站的时候,没有设置div部分的高度,而是用内容填充了它。然后我将 background-image 设置为图像,由于没有高度,image/div 会拉伸(stretch)以包裹内容。我一直在尝试复制它,但每次我做同样的事情时,背景图像都会消失,但内容仍然存在(白色文本,除非选中,否则看不到)。当我将其设置为:

#main{
    background-image: url("images/pizza-dark.jpg");
    background-repeat: no-repeat; 
    background-size: cover;
    background-attachment: fixed;
    clear: both;
}

我知道有办法做到这一点,但我不太确定。这对站点至关重要,因为我使用的是 Bootstrap 列,并且设置的高度不会在移动设备上产生良好的结果。在下面的 JSFiddle 中,没有设置高度,如您所见,背景图像根本不显示。即使您将其设置为 100%,向下折叠的内容(来自 Bootstrap 的列)也不会显示,因为背景图像不会拉伸(stretch)那么远。我也尝试过 height:auto,但这也不起作用。

这是一个 JS fiddle : https://jsfiddle.net/du53n862/

谢谢!

最佳答案

您忘记将 float 属性添加到主容器。您可以使用 vh 单位作为主容器 height 的单位,它将适合所有屏幕尺寸:

#main {
background-image: url("http://itspizzatime.ca/wp-    content/uploads/2015/09/4791207-9790062099-Pizza1.jpg");
background-repeat: no-repeat; 
background-size: cover;
float: left;
width: 100%;
height: 100vh;
}

这是一个 fiddle :fiddle link

关于html - 如何使 div 的高度和背景图像拉伸(stretch)以环绕 div 中的所有内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38801013/

相关文章:

asp.net-mvc-3 - 使用纯 HTML 和 MVC 3 上传大文件

CSS print - 整个页面的拉伸(stretch)表(高度 = 100%)

CSS 按钮状态怪异 - 按住单击状态?

javascript - <HEAD> 中包含了多少?

html - 创建多行标题

css - Bootstrap 按钮轮廓是怎么回事?

css - HTML 和 CSS 布局帮助

javascript - Google map API 不适用于 IOS safari

jQuery/CSS - 如何设置元素在另一个元素中首次出现的样式?

HTML + CSS - 重叠标题图像