首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使第二个div (以及随后的所有div )显示在绝对div下

使第二个div (以及随后的所有div )显示在绝对div下
EN

Stack Overflow用户
提问于 2018-03-29 03:18:59
回答 3查看 39关注 0票数 1

我目前有:

代码语言:javascript
复制
<div className='header'></div>
<div className='hero-img'></div>
<div className='paragraph'></div>
<div className='cta'></div>

我想把标题叠加到英雄形象上。这是我的CSS:

代码语言:javascript
复制
.hero-image {
height: 60vh;
min-height: 10em;
width: 100vw;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
background-size: cover;
background-position: center;
position: absolute;
top: 0;
}

因此,现在标题正确地覆盖在英雄图像上,但现在段落已经上移,并且也在英雄图像上。既然我已经在英雄形象上做了position:absolute,并将其锚定在顶部,我如何将段落(和所有后续div)向下移动?

EN

回答 3

Stack Overflow用户

发布于 2018-03-29 03:34:00

在.header上使用position: absolute;,而不是在.hero-img中,它会工作得很好。

票数 0
EN

Stack Overflow用户

发布于 2018-03-29 03:38:10

不是让image位置absolute,而是让header的位置absolute。在申请之前先学习positions,否则你会做一些随机的事情,得到随机的结果。

代码语言:javascript
复制
.image{
  display: block;
  width: 200px;
  height: 200px;
  background-color:red;
}
h2{
  position: absolute;
}
代码语言:javascript
复制
<div>
  <h2>Good
  </h2>
  <div class='image'></div>
</div>
<p>Para1 Para1 Para1 Para1 Para1 Para1 Para1 Para1</p>

在这里,只有header将从常规布局中移除,并将位于父div的左上角。其他一切都将照常进行。

在绝对位置,想象一下如果header不存在,内容会是什么样子,然后把header放在父元素的左上角。

票数 0
EN

Stack Overflow用户

发布于 2018-03-29 03:55:03

您可以在此处使用HTML5文档节元素。

(您真的应该使用<header>而不是<div class="header">...)

代码语言:javascript
复制
<header>
</header>

<main>
<div className='paragraph'></div>
<div className='cta'></div>
</main>

别忘了给<header>一个背景图片:

代码语言:javascript
复制
header {
background-image: url(/hero-img.jpg);
}

如果<header>140px,你可以给它绝对的位置:

代码语言:javascript
复制
header {
position: absolute;
top: 0;
left: 0;
}

你可以给<main>一个margin-top

代码语言:javascript
复制
main {
margin-top: 160px;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49542530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档