CSS视口高度:100vh无法正确处理div中的内容

战斗机

我是新来的并已注册,因为我无法在现有的踏板中找到答案。

我正在尝试制作一个一页的网站,并且我希望“目标网页”具有完整的背景。我在整个页面上都有背景,但是当我开始在div中放置文本时,它坏了。我使用了以下css(sass):

.intro {
    color: #fff;
    height: 100vh;
    background: url('http://www.flabber.nl/sites/default/files/archive/files/i-should-buy-a-boat.jpg') no-repeat center center; 
    background-size: cover;

    &--buttons {
        position: absolute;
        bottom: 2em;
    }
}

p.hello {
    margin: 30px;
}

.page1 {
    color: #fff;
    height: 100vh;
    background: beige;
}

.page2 {
    color: #fff;
    height: 100vh;
    background: black;
}

使用以下HTML:

<html>
    <head>
        <link href="stylesheets/screen.css" media="screen, projection" rel="stylesheet" type="text/css" />
        <title>My title</title>
    </head>

    <body>
        <div class="container">
            <div class="row">

                <div id="intro" class="intro">

                    <div class="text-center">
                        <p class="hello">
                            Intro text is coming soon!
                        </p>
                            <div class="col small-col-12 intro--buttons">
                                <p>Buttons coming here.
                                </p>
                            </div>
                    </div>

                </div>

                <div id="page1" class="col col-12 page1">
                    <p>Tekst test</p>
                </div>

                <div id="page2" class="col col-12 page2">
                    <p>Tekst test.</p>
                </div>

            </div>
        </div>
    </body>
</html>

您可以在这里查看结果:http : //codepen.io/Luchadora/full/waYzMZ或看我的笔:http : //codepen.io/Luchadora/pen/waYzMZ

如您所见,在放置介绍文字(时p.hello {margin: 30px;},背景大小已更改并且不再是全屏显示。(顺便说一句:我使用的是示例背景)。现在其他页面也有空白。.

我怎样才能解决这个问题?我已经阅读了有关视口的文章,但是我认为我唯一需要的是height: 100vh;,对吗?提前致谢!

皮特

您的问题在于保证金崩溃

父级和第一个/最后一个孩子
如果没有边框,内边距,行内内容或净空来将块的边距顶部与第一个子块的边距顶部分开,或者没有边框,内边距,内嵌内容,高度,最小高度或最大高度将块的边距底部与最后一个子元素的边距底部分开,然后这些边距折叠。折叠后的边距最终位于父级之外。

要解决您的问题,请在上添加一些填充.text-center

.text-center {padding:1px;}

更新笔

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么这个高度为100vh的div无法覆盖整个视口?

最小高度100vh会创建垂直滚动条,即使内容小于视口

即使父级的高度设置为`100vh`,子元素也不会包含在视口高度中

移动设备上的视口高度 (100vh) 导致不必要的滚动

CSS 100vh未将div设置为100%高度

CSS视口问题:vh与100%

高度:100vh;并在较小的屏幕上溢出“内容”

平板电脑/手机中的错误,css 100vh高度不起作用

flex:1在Safari浏览器中仅采用100vh高度,而不是全部内容高度

Height 100vh - JavaScript 中其他元素的高度

Div浮动保持固定,视口高度保持100%

视口高度100%无法在页面元素上使用

为什么即使高度为100%,高度为100vh,也无法获得完整的页面?

容器超过其高度100vh

Firefox Mobile和高度100vh

iOS 7.1最小用户界面导致视口高度CSS单元(VH)出现问题

在 CSS 中使用“视口高度/vh”时,它是否包含“浏览器书签栏”?

CSS样式,100%/ 100vh不会覆盖通过视图的高度

HTML部分的视口高度为100%

Flexbox和100vh高度:内容过多时页脚消失

CSS:制作视口的图像高度,同时保持宽度为 100%,如果比视口宽则裁剪边缘

在WordPress中使用视口高度(vh)显示div标签以显示窗口的百分比高度

正确设置离子滚动视口高度

垂直调整视口大小时,高度为100%的Div变得小于100%

CSS(尾风)网格高度 100vh 不起作用

100vh不会使列高度达到100%

标题部分中的 href 不充当链接,并且垂直高度不是 100vh

使用jQuery根据内容和视口高度更改div的位置

在ReactJS中获取视口/窗口高度