1. 程式人生 > >為什麽子元素設置margin-top會作用在父元素上?

為什麽子元素設置margin-top會作用在父元素上?

school overflow blank pad over lan 子元素 sch div

原因在於:CSS 外邊距合並

復現:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<style>
html * {
      margin:0;
      padding: 0;
}
</style>
<body>
    <section style = "background:orange;">
        <
article style =‘height:100px;margin-top:40px;background:red‘></article> </section> </body> </html>

這裏子元素設置margin-top會作用在父元素上了。

解決方法:

1、為父元素設置padding。
2、為父元素設置border。
2、為父元素設置 overflow: hidden

為什麽子元素設置margin-top會作用在父元素上?