margin重叠与line-height属性
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了margin重叠与line-height属性相关的知识,希望对你有一定的参考价值。
line-height
line-height代表行高
蓝色背景部分为行高
line-height:2em
相邻兄弟元素margin重叠
蓝色与蓝色之间的白色部分为
margin-bottom:1em;
margin-top:1em;
因为发生了margin-top与margin-bottom重叠
所以只有1em的留白
![技术分享](https://image.cha138.com/20210825/779ba87796494e9181f0e5ac7f42d4fd.jpg)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> p{ line-height: 2em; margin: 1em 0; background: lightseagreen; } </style> </head> <body> <p>第一行</p> <p>第二行</p> </body> </html>
父类元素与子元素margin重叠
条件
- 父类元素没有设置border-top值
- 父类元素没有设置padding-top值
子元素设置margin-top等于20px
![技术分享](file:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(1).png)
父类元素设置margin-top等于20px
![技术分享](file:///C:/Users/ADMINI~1/AppData/Local/Temp/enhtmlclip/Image(2).png)
![技术分享](https://image.cha138.com/20210825/0f4379a65d684977837001f9b5870022.jpg)
父类元素与子元素同时设置margin-top等于20px,
![技术分享](https://image.cha138.com/20210825/2b7d6d3278a74e81ae6945b65b911808.jpg)
此时父类元素的margin-top与子元素margin-top发生重叠
![技术分享](https://image.cha138.com/20210825/4f9ee973fd734bccae74fcd0b1ddd144.jpg)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> body{ background: lightblue; } #father{ background: lightcoral; margin-top:20px; } #son{ margin-top:20px;//上外边距等于20px } </style> </head> <body> <div id="father"> <div id="son"> my name is son </div> </div> </body> </html>
当第一行的margin-bottom等于50px,
第二行的margin-top等于30px,
这时它们两个之间的间距取较大值50px
当一个值为正数,一个为负值时,
间距取它们两个值的和
当两个值都为负值,取它们其中绝对值较大的负值。
![技术分享](https://image.cha138.com/20210825/37854d87701c42d1abdd99952cb57d99.jpg)
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> .first{ margin-bottom: 50px; background: lightblue; } .second{ margin-top: 30px; background: lightcoral; } </style> </head> <body> <p class="first">第一行</p> <p class="second">第二行</p> </body> </html>
以上是关于margin重叠与line-height属性的主要内容,如果未能解决你的问题,请参考以下文章
CSS里面的属性margin-right:auto; margin-left:auto;是啥意思??? 还有 line-height是啥意思