HTML里子DIV设置margin-top后影响父DIV位置的解决办法

在HTML里,子DIV元素设置了margin-top后,在与父元素之间没有任何其他元素的情况下,会影响到父DIV的位置。

一、编写代码。





  



HTML里子DIV设置margin-top后影响父DIV位置的解决办法_第1张图片

二、子元素添加margin-top:10%

HTML里子DIV设置margin-top后影响父DIV位置的解决办法_第2张图片HTML里子DIV设置margin-top后影响父DIV位置的解决办法_第3张图片

父DIV元素的位置被影响,上面出现大片空白。

解决:

  1. 子DIV或者父DIV里设置float:left;可以使父DIV位置还原。
  2. 父DIV设置position: relative;子DIV里设置position: absolute;或者直接在父DIV里设置position: absolute;可以使父DIV位置还原。
  3. 父DIV设置border-top: 1px solid;可以使父DIV位置还原。
  4. 父DIV设置padding-top代替子DIV设置margin-top。
  5. 子DIV设置position: relative;top: 10%;代替margin-top不会使父元素DIV位置发生改变。(注意:position: relative时,top等定位属性是根据元素自身当前位置进行定位,不会改变其他元素位置,容器内只有一个元素的情况下会发现子元素设置定位后不会撑开父容器高度,也就会发生溢出现象。margin属性是在元素占据位置周围补白,会影响其他元素位置)

你可能感兴趣的:(前端,html,css)