[英]Align div to the bottom of a container
I am using the skeleton CSS and I'm trying to get a div
to be at the bottom of the page.我正在使用骨架CSS 并且我试图让一个
div
位于页面底部。 I have tried using position: absolute; bottom: 0;
我试过使用
position: absolute; bottom: 0;
position: absolute; bottom: 0;
within the container has a relative position, but the div
just aligns to the right-hand side of the page.容器内有一个相对的 position,但
div
仅与页面的右侧对齐。
.page { align-items: center; background-position: center; background-repeat: no-repeat; background-size: cover; display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; min-height: 100vh; } #home { background: red; }
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/4.1.1/normalize.min.css"> <div class="page" id="home"> <div class="container" style="text-align: center;"> <div class="row"> I am a title in the middle of the page. </div> <div class="row" style=""> I want to be at the bottom of the page. <br> <a href="#">Click here!</a> </div> </div> </div>
Is this possible, please?请问这样可以吗?
Take the Bottom text element out of the CONTAINER parent and place it as a child of the PAGE element, then position:absolute will work:从 CONTAINER 父元素中取出底部文本元素并将其作为 PAGE 元素的子元素,然后 position:absolute 将起作用:
https://jsfiddle.net/akLr6zb0/ https://jsfiddle.net/akLr6zb0/
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/4.1.1/normalize.min.css">
<div class="page" id="home">
<div class="container" style="text-align: center;">
<div class="row">
I am a title in the middle of the page.
</div>
</div>
<div class="bottom" style="">
I want to be at the bottom of the page.
<br>
<a href="#">Click here!</a>
</div>
</div>
.page {
align-items: center;
background-position: center;
background-repeat: no-repeat;
background-size: cover;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
min-height: 100vh;
position: relative;
}
#home {
background: red;
}
.bottom {
bottom: 0;
display: block;
position: absolute;
}
position: absolute; bottom: 0;
is right, but you also need to make sure the direct parent .container
is the height of the page, and then center everything with display: flex
:是对的,但您还需要确保直接父
.container
是页面的高度,然后使用display: flex
将所有内容居中:
.page { min-height: 100vh; }.container { display: flex; justify-content: center; align-items: center; height: 100vh; } #home { background: red; }
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/4.1.1/normalize.min.css"> <div class="page" id="home"> <div class="container" style="text-align: center;"> <div class="row"> I am a title in the middle of the page. </div> <div class="row" style="position: absolute; bottom: 0;"> I want to be at the bottom of the page. <br> <a href="#">Click here!</a> </div> </div> </div>
I am not sure if it's what you want but I achieve that with displaying the container as flex.我不确定这是否是您想要的,但我通过将容器显示为 flex 来实现。
.page { align-items: center; background-position: center; background-repeat: no-repeat; background-size: cover; display: flex; flex-direction: column; flex-wrap: wrap; justify-content: center; min-height: 100vh; } #home { background: red; }.container { flex-grow: 1; display: flex; align-items: center; justify-content: center; }.bottom { position: absolute; bottom: 0; }
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/skeleton/2.0.4/skeleton.min.css"> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/normalize/4.1.1/normalize.min.css"> <div class="page" id="home"> <div class="container"> <div class="row"> I am a title in the middle of the page. </div> <div class="row bottom" style=""> I want to be at the bottom of the page. <br> <a href="#">Click here!</a> </div> </div> </div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.