簡體   English   中英

當容器大於視口時,將高度設置為瀏覽器視口的100%?

[英]Set height to 100% of browser viewport when container is bigger than viewport?

我正在網站上工作,我需要設置div的高度和寬度,以覆蓋瀏覽器視口的整個區域,就像許多現代網站一樣。 但是,我不能簡單地將其高度設置為100%,因為它的父元素是另一個div,其高度必須設置為大於瀏覽器窗口。 還有另一種方法嗎?

這是一個與我的網站類似的代碼示例。

HTML

<div class="entireThing">
  <div class="contentBox">
  </div>
  <div class="contentBox">
  </div>
</div>

CSS

.entireThing {
    height: 8000px;
    width: 100%;
}
.contentBox {
    height: 100%; /*This works only if parent is same size as window*/
}

5.1.2。 視口百分比長度:'vw','vh','vmin','vmax'單位

視口百分比長度相對於初始包含塊的大小。 當初始包含塊的高度或寬度改變時,它們相應地縮放。

使用視口百分比長度。 在這種情況下, 100vh

.contentBox {
    height: 100vh;
}

更新的示例


您還可以使用calc()減去10px上/下邊距:

.contentBox {
    height: calc(100vh - 20px); /* Subtract the 10px top/bottom margins */
    margin: 10px;
    color: white;
    background-color: #222;
}

更新的示例

..這是值得指出的,你需要在父元素上建立一個新的塊格式化上下文 ,以防止折疊邊距

暫無
暫無

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

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