簡體   English   中英

(HTML / CSS)如何在父元素內垂直居中網格

[英](HTML / CSS) How to Vertical Center Grid Within Parent Element

我試圖將網格顯示居中在頁面大小100%的元素內,同時在整個網格周圍留出空間。 我嘗試過自動頁邊距,但是網格一直停留在父級的頂部。 添加手動頁邊距時,主體會向下推動充當網格邊距的網格父元素。 我還嘗試了在父元素內將網格間隔一半的另一個div。 有什么方法可以做這種清潔劑(沒有墊片)?

HTML:

<html>
  <body>
    <main>
      <div class="spacer"></div>
      <div class="grid">
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
        <div></div>
      </div>
    </main>
  </body>
</html>

CSS:

html, body {
  height: 100%;
  width: 100%;
}

main {
  height: 100%;
  width: 100%;
}

.spacer {
  height: 10%;
}

.grid {
  display: grid;
  height: 80%;
  width: 90%;
  grid-template: 1fr 2fr 1fr / 1fr 2fr 1fr;
  margin: auto;
}

JSFIDDLE: https ://jsfiddle.net/593Lovxw/22/

嘗試這個:

 html, body { height: 100%; width: 100%; } main { background: #f00; height: 100%; width: 100%; display: flex; vertical-align: center; } .spacer { background: orange; height: 10%; } .grid { display: grid; height: 80%; width: 90%; grid-template: 1fr 2fr 1fr / 1fr 2fr 1fr; margin: auto; } .grid div { background: #00f; border: thick solid black; } 
 <html> <body> <div class="spacer"></div> <main> <div class="grid"> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> <div></div> </div> </main> </body> </html> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM