css 当我使用“高度:100vh”时,身体上方的白色区域

pes8fvy9  于 2023-04-13  发布在  其他
关注(0)|答案(2)|浏览(201)

我有一个基本的HTML文档设置,我希望div具有视图端口的高度,但是当我将height:100vh添加到.main div时,主体上方有一个间隙,并且有一个垂直滚动条。
这是我的代码。
HTML:

<div class="main">
    <div class="container">

        <div class="nav">
            <ul>
                <li><a href="index.html" class="active">Work</a></li>
                <li><a href="#">About</a></li>
                <li><a href="#">Contact</a></li>
            </ul>
        </div>

        <div class="main_text">
            <h1>Hey there! I'm <span class="yellow">Gautham SK</span>, a digital designer &amp; web developer.</h1>
        </div>

    </div> <!-- end container -->
</div> <!-- end main -->

CSS:

html, body {
    height: 100%;
    padding: 0;
    margin: 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
}


.container {
    max-width: 1024px;
    padding: 0 20px;
    margin: 0 auto;
}

/* NAVIGATION */

.nav ul {
    display: flex;
    align-items: center;
    justify-content: flex-end;
/*  margin-top: 75px;*/
    list-style-type: none;
}

.nav ul li {
    margin-left: 40px;
    list-style: none;
    font-size: 16px;
}

.nav ul li a, .nav ul li a:visited {
    color: #000;
    padding: 5px;
    text-decoration: none;
    transition: 0.2s color;
}

.nav ul li a:hover {
    color: #ffde00;
    transition: 0.2s color;
}

.nav ul li a.active {
    color: #000;
    border-bottom: 5px solid #ffde00;
}

/* MAIN SECTION */

.main {
    background: url("../images/bg.jpg") center center no-repeat;    
    background-size: cover;
}

.main, .main .container {
    height: 100vh;
}

.main_text {
    height: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main_text h1 {
    font-weight: 400;
    font-size: 45px;
}

span.yellow {
    color: #ffde00;
}

我也有一个normalize.css链接到这个文档。我试图删除所有元素的填充和边距,但这不起作用。

更新

耶!找到解决办法了。我是这么做的:

  • 删除了导航和它的子元素的边距,并将其替换为顶部填充,以获得所需的外观。
  • main_text的高度更改为80%。

如果你有更好的解决办法,告诉我!

fykwrbwg

fykwrbwg1#

作为一个简单的测试,在body上设置padding: 1px。如果差距消失,则读取:http://www.sitepoint.com/web-foundations/collapsing-margins/

5cg8jx4n

5cg8jx4n2#

我在我的手机预览图像下的白色间距。但由于某种原因,而不是有高度:100 vh;我改成了高度:110 vh;白色间距消失了,适合手机屏幕。
这里是csspart

.background_sv{
 position: absolute;
 height: 110vh; 
 width: auto;
}

此处白色间距图像,然后再使用height:110vh;
https://imgur.com/a/K8YVkXx
修好之后
https://imgur.com/a/1CfyMKs
它适合屏幕。
手机相当长。宋Xperia 10 ii也许是因为这个,但我没有在任何其他设备上试用过

相关问题