HTML元素重叠
所以我在我的网站上使用的是100 vh高的英雄形象。现在,图像是绝对定位的,因此我可以将其他元素(如徽标、导航和文本)相对定位在图像上。在本节之后,我想用新图像和其他文本开始新的节,但一旦我开始新行、新列并尝试用h1文本放置新图像,它就会隐藏在前面的图像后面。我的意思是,我希望一个新的部分与新的图像和文本下出现的英雄形象,而不是重叠或隐藏在它下面,因为它现在正在隐藏。它不是浮动的,我的浮动被清除了,所以我不明白为什么会这样 这里有一些密码笔,这样你就能明白什么是密码HTML元素重叠,html,css,twitter-bootstrap,css-float,css-position,Html,Css,Twitter Bootstrap,Css Float,Css Position,所以我在我的网站上使用的是100 vh高的英雄形象。现在,图像是绝对定位的,因此我可以将其他元素(如徽标、导航和文本)相对定位在图像上。在本节之后,我想用新图像和其他文本开始新的节,但一旦我开始新行、新列并尝试用h1文本放置新图像,它就会隐藏在前面的图像后面。我的意思是,我希望一个新的部分与新的图像和文本下出现的英雄形象,而不是重叠或隐藏在它下面,因为它现在正在隐藏。它不是浮动的,我的浮动被清除了,所以我不明白为什么会这样 这里有一些密码笔,这样你就能明白什么是密码 <div class=
<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;
}
代码笔:代码中有多个项目需要清理,但为了防止图像重叠,您可以删除位置的两个条目:绝对;来自.hero_img类
然后,从容器流体的所有媒体查询中删除左侧和右侧的填充。这可能会影响容器中所需的填充物和其他填充物,但这将是实现您要求的快速途径。我没有理解您的要求,您能详细说明一下吗?也许是一张照片,它现在是什么样子,你到底想要什么我对vh测量不太熟悉,但我怀疑这可能与你的问题有关。您正在将图像设置为100%的垂直查看高度,这可能不允许您将内容放置在其下方。不管怎样,你可以使用javascript获取窗口的高度,然后将其应用到你的图像div中,使它们是以像素为单位的精确高度……然后叠加div应该没有问题。事实上,你可以将相同的数字应用到你的绝对div图层上,它们会整齐地堆叠起来。对不起,没有清楚的描述,伙计们。已经解决了。Vh测量单位与此无关。我犯了一个错误,给了我的英雄形象绝对的位置。它必须是相对位置的,然后里面的所有元素都相对定位。现在我改变了vice verca的属性,我可以看到主英雄图像下的新内容没有重叠。无论如何谢谢你!是的,我已经去掉了绝对位置,改成了相对位置,它就像我想要的那样工作。谢谢