重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章将为大家详细讲解有关CCS中margin:top塌陷的解决方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
公司主营业务:成都做网站、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出岚皋免费做网站回馈大家。HTML结构如下:
CCS结构如下:
页面效果图如下:
现在我们可以看到在子元素中明明设置了向右50px和向下50px,可页面显示的效果却只有向右移动的没向下移动的。
通常来说,margin
是设置元素的外边距,正常情况下设置margin
值时应该是父元素相对于浏览器定位,子元素相对于父元素定位;而现在设置了
margin-top: 50px,页面却没效果这就说明是margin塌陷。
那什么是margin塌陷呢?
在子级中当设置margin-top: 50px;
时,里面的盒子并没有改变,但是在给子元素设置margin-top: 150px
;大于父盒子的高度时,子元素就不会再相对于父元素定位了而是带着父元素一起相对于浏览器去定位向下移动150px;这就说明是margin塌陷。(margin塌陷是在父级相对于浏览器进行定位时而子级并没有相对于父级定位,子级相对于父级就像塌陷了一样)
当我们把margin-top: 50px调成大于父级元素的高度时,子元素就不会再相对于父元素定位了而是带着父元素一起相对于浏览器去定位向下移动150px;
页面效果图如下:
要想解决margin塌陷问题就嘚使用bfc的概念:
bfc是指:block format context
(块级格式上下文),触发bfc的元素将会改变一小部分的渲染规则,可用于解决些css的疑难bug;
触发bfc的元素有:
position:absolute;
display:inline-block;
float:left/right;
overflow:hidden;
CSS结构如下:
页面效果如下:
通过以上任意一行即可弥补margin塌陷的问题~
1.行内样式,最直接最简单的一种,直接对HTML标签使用style=""。2.内嵌样式,就是将CSS代码写在之间,并且用
进行声明。3.外部样式,其中链接样式是使用频率高,最实用的样式,只需要在之间加上
就可以了。其次就是导入样式,导入样式和链接样式比较相似,采用@import样式导入CSS样式表,不建议使用。关于“CCS中margin:top塌陷的解决方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。