2017-03-07 102 views
0

所以我使用英雄形象为我的网站是100高度。现在图像是绝对定位的,所以我可以在图像上放置其他元素,如徽标,导航和文本。在本节之后,我想用新图像和其他文本开始新的部分,但是一旦我开始新的行,列并尝试用h1文本放置新图像,它就隐藏在较早的图像之后。我的意思是我想要一个新的部分新图像和<h1>文本出现在英雄图像下,不会重叠或隐藏在它下面,因为它现在隐藏。它没有浮动或什么,我的花车被清除,所以我不明白为什么这个毛病。重叠的HTML元素

这里有一些codepen,所以你会明白什么是发髻。

<div class="container-fluid clearfix"> 
    <div class="row"> 
     <div class="col-lg-12"> 
    <div class="hero_img"> 
     <img class="logo" src="assets/logo.png"></img> 

     <button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".collapse"> 
☰ 
</button> 
     <div class="collapse"> 
     <div class="col-xs-12"> 
     <ul class="nav"> 

     <li class="nav-item"> 
      <a class="nav-link" href="#">Lorem</a> 
     </li> 
     <li class="nav-item"> 
      <a class="nav-link" href="#">Lorem</a> 
     </li> 
     <li class="nav-item"> 
      <a class="nav-link" href="#">Lorem</a> 
     </li> 
     <li class="nav-item"> 
      <a class="nav-link" href="#">Lorem</a> 
     </li> 
     </ul> 
    </div> 
    </div> 
    <div class="black_box clearfix"><h1>Kolding Bike Marathon</h1></div> 
    <div class="black_box_sub clearfix"><p>Bring activity to your life again</p></div> 

    <button type="button" class="btn btn-outline-secondary">Register now</button> 
    <button type="button" class="btn btn-success">Learn more</button> 

    </div> 

</div> 
</div> 
</div> 
</div> 

     <div class="section_one"> 
     <h1>heyyyyy</h1> 
    </div> 



.hero_img { 
    background-image: url("assets/hero.jpg"); 
    width: auto; 
    height: 100vh; 
    background-size: cover; 
    position: absolute; 
    top: 0; 
    left: 0; 
    z-index: 999; 
    overflow: hidden; 
    clear: both; 
} 



.hero_img { 
    width: 100%; 
    height: 100vh; 
    position: absolute; 
    top: 0; 
} 

.logo { 
    position: relative; 
    left: 20px; 
    top: 20px; 
    z-index: 1002; 
    width: 5%; 
    min-width: 50px; 
} 

.nav { 
    position: relative; 
    top: 0; 
    z-index: 1000; 
    margin-top: 20px; 
    /*margin-right: 15px;*/ 
    padding: 20px; 
    /*float: right;*/ 
    width: auto; 
    flex-direction: column; 
    background: #555; 
    /*width: 100%;*/ 
    filter: opacity(0.93); 
} 

a { 
    text-decoration: none; 
    color: white; 
    display: block; 
    border-bottom: 1px solid #444; 
} 

a:hover { 
    color: #999; 
} 

.nav-item { 
    display: block; 

} 

.navbar-toggler { 
    /*float: right;*/ 
    display: flex; 
    justify-content: right; 
    position: relative; 
    z-index: 1000; 
    margin-top: 15px; 
    margin-right: 15px; 
    color: white; 
    float: right; 
} 

.black_box { 
    position: relative; 
    width: 45%; 
    min-width: 400px; 
    text-align: center; 
    z-index: 1000; 
    background: black; 
    margin-top: 10%; 
    padding: 10px 30px; 
    clear: both; 

} 

.black_box h1 { 
    color: white; 
    /*font-family: 'PT Sans', sans-serif;*/ 
    font-family: 'Montserrat', sans-serif; 
    font-weight: 600; 
    letter-spacing: 1.5px; 

} 

.black_box_sub { 
    position: relative; 
    width: 30%; 
    min-width: 310px; 
    text-align: center; 
    z-index: 1001; 
    background: black; 
    margin-top: 2%; 
    clear: both; 
    margin-left: 90px; 
} 

.black_box_sub p { 
    color: white; 
    padding: 5px 25px; 
    font-family: 'Montserrat', sans-serif; 
    text-transform: uppercase; 
    padding-top: 10px; 
    padding-bottom: 0px; 

} 

Codepen:http://codepen.io/Limpuls/pen/NpbwYp

+0

我没有得到你所问的,你能详细说明一下吗?也许有图片,现在是什么样,你究竟想要什么 –

+0

我对“vh”测量不太熟悉,但我怀疑这可能与你的问题有关。您将图像设置为垂直观看高度的100%,这可能不允许您将内容放置在其下方。无论你可以使用JavaScript来获得窗口的高度,然后将其应用到你的图像div,所以它们是像素的确切高度....然后堆叠div应该没有问题。事实上,你可以将相同的数字应用于你的绝对div层,并且它们都会整齐地堆叠起来。 –

+0

对不起,不清楚的描述,伙计们。已经解决了它。 Vh测量单位与此无关。我绝对让我的英雄形象位置犯了一个错误。它必须是相对位置,然后相对位置内的所有元素。现在我改变了属性verca,我可以看到主英雄图像下的新内容不重叠。不管怎么说,还是要谢谢你! – Limpuls

回答

1

有多个项目中的代码进行清理,而是从重叠的,你可以删除的位置时,两个条目保持图像:绝对的;来自.hero_img类。

之后,从容器流体的所有媒体查询中左右移除填充。这可能会影响该容器中需要的其他填充,但是可以快速完成所要求的操作。

+0

是的,我已经删除了绝对位置,并将其改为相对,它像我想要的那样工作。谢谢 – Limpuls