色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

當一個100% div的框大小設置為border-box時,為什么它會溢出它的父div(body,html )?

方一強2年前8瀏覽0評論

我有以下CSS配置

body,
html {
  margin: 0px;
  padding: 0px;
  height: 100vh;
  border: 5px solid black;
}

div.a {
  height: 100%;
  margin: 0px;
  padding: 0px;
  box-sixing: border-box;
  background-color: blue;
}

<div class='a'></div>

要點是,簡單地說,你給& lthtml & gt高度為100vh,然后添加邊框。現(xiàn)在& ltbody & gt從5px高開始。現(xiàn)在您設置& ltbody & gt到100vh,但是因為& ltbody & gt從頂部開始5px,延伸到瀏覽器視窗下方5px。

您不需要對& lthtml & gt標記,您可以只給& ltbody & gt100vh和10px(或者你需要多少)的邊框。

如果拼寫正確,框大小將應用于指定的元素。然而,讓您的示例溢出的是5px邊框增加了兩個(!)次,一次到正文,一次到html標簽。

下面是一個沒有溢出的工作示例:

body,
html {
  margin: 0px;
  padding: 0px;
  height: 100vh;
}

div.a {
  height: 100%;
  margin: 0px;
  padding: 0px;
  border: 5px solid black;
  box-sizing: border-box;
  background-color: blue;
}

<div class='a'></div>

你拼錯了方塊sizining

div.a
{
  height: 100%;
  margin: 0px;
  padding: 0px;
  box-sixing: border-box; <-- supposed to be sizing
  background-color: blue;
}

溢出的原因是因為你的身體標簽有邊框

可以用calc() css函數(shù)去掉邊框造成的多余高度:like so-& gt;

body, html
{
   margin: 0px;
   padding: 0px;
   height: calc(100vh - 5px) <- remove the thicknes of the border from the height ;
   border: 5px solid black;
   box-sizing: border-box;
 }

calc()函數(shù)可以用來計算css單位,確保在數(shù)學運算符前后有一個空格

如果你需要我澄清或者我誤解了你的問題,請在評論中告訴我

有些事情需要弄明白。以下是更新后的代碼:-

body{
  margin: 0px;
  height: 100vh;
  box-sizing: border-box;
  border: 5px solid black;
}

div.a {
  height: 100%;
  margin: 0px;
  padding: 0px;
  background-color: blue;
}

<div class='a'></div>