返回顶部
首页 > 资讯 > 精选 >CSS怎么使用margins属性折叠现象内幕
  • 320
分享到

CSS怎么使用margins属性折叠现象内幕

2023-07-04 19:07:51 320人浏览 泡泡鱼
摘要

这篇文章主要介绍“CSS怎么使用margins属性折叠现象内幕”,在日常操作中,相信很多人在CSS怎么使用margins属性折叠现象内幕问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么使用margin

这篇文章主要介绍“CSS怎么使用margins属性折叠现象内幕”,在日常操作中,相信很多人在CSS怎么使用margins属性折叠现象内幕问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么使用margins属性折叠现象内幕”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Margin简介

包括margin-top,margin-right,margin-bottom,margin-left,控制块级元素之间的距离,它们是透明不可见的。

Collapsingmargins:

margins折叠现象只存在于临近或有从属关系的元素,垂直方向的margin中.文字说明可能让人费解,下面用一个例子说明margin-collapsing现象.

例:在html文件的之间写入如下代码:

<dividdivid=”ID1″> <h2idh2id=”ID2″>MarginsofID1andID2collapsevertically.<br/> 元素ID1与ID2的margins在垂直方向折叠.h2> div>

在与其外联的css文件中写入:

*{  padding:0;  margin:0;  }  #ID1{  background-color:#333;  color:#FFF;  margin-top:10px;  margin-bottom:10px;  }  #ID2{  font:nORMal14px/1.5Verdana,sans-serif;  margin-top:30px;  margin-bottom:30px;  border:1pxsolid#F00;  }

代码解释:

1.在html写入的代码表示,在html中插入id分别为ID1和ID2的两个块级元素div,h2;
2.*{padding:0;margin:0;}:使浏览器默认的元素padding和margin值均归零;
3.#ID1{…}:使id为ID1的元素div的背景颜色为#333,字体颜色为#FFF,margin-top/bottom为10px;
4.#ID2{…}:使id为ID2的元素h2的字体大小为14px,verdana字体,行高为字体高的150%,正常粗细.margin-top/bottom为30px,边框为1px宽,红色实线.

依据以上解释,我们应该得到如下效果(Fig.3):

CSS怎么使用margins属性折叠现象内幕

即ID1的margin-top/bottom=ab=ef=10px;
ID2的margin-top/bottom=bc=de=30px;
但用浏览器打开html文件,却得到Example4的效果,如下图(Fig.4):

CSS怎么使用margins属性折叠现象内幕

即ab=cd=30px,ID1的margin-top/bottom=10px被折叠了,而且ID1应有的margin黑色背景也一同被折叠消失了。

为什么会折叠:

造成以上现象的原因是,我们在css中并没有声明id为ID1的元素div的height(高),因此它的高便被设为auto(自动)了.一旦其值被设为auto,那么浏览器就会认为它的高为子元素ID2的border-top到border-bottom之间的距离,即Fig.4中bc的长度,所以子元素ID2的margin-top/bottom(30px)就伸出到了父元素ID1之外,出现了Fig.4中ab与cd之间的空白区域.因此父元素ID1的margin-top/bottom因子元素的”红杏出墙”而被折叠消失了.

如何解决折叠问题:

可能大家最初想到的办法就是根据折叠发生的原因—auto,来解决问题.但是,在实际操作中,某些元素如div,h2,p等,我们是不可能预先知道它的高是多少的,因此在css文件中是不能常规通过声明元素的高来解决折叠问题.

我们需要在css文件中加入如下代码(红色部分):

#ID1{  background-color:#333;  color:#FFF;  margin-top:10px;  margin-bottom:10px;  padding-top:1px;  padding-bottom:1px;  }  或是:  #ID1{  background-color:#333;  color:#FFF;  margin-top:10px;  margin-bottom:10px;  border-top:1pxsolid#333;  border-bottom:1pxsolid#333;  }

通过增加以上代码,便可使浏览器重新计算ID1的高,使其为子元素ID2的margin-top/bottom外缘(outertop/bottom)之间的距离,即Fig.3中be的距离.

到此,关于“CSS怎么使用margins属性折叠现象内幕”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: CSS怎么使用margins属性折叠现象内幕

本文链接: https://lsjlt.com/news/347186.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CSS怎么使用margins属性折叠现象内幕
    这篇文章主要介绍“CSS怎么使用margins属性折叠现象内幕”,在日常操作中,相信很多人在CSS怎么使用margins属性折叠现象内幕问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么使用margin...
    99+
    2023-07-04
  • CSS中怎么利用margins属性折叠现象内幕
    今天就跟大家聊聊有关CSS中怎么利用margins属性折叠现象内幕,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Margin简介包括margin-t...
    99+
    2024-04-02
  • 怎么用CSS实现圆角折叠菜单
    本篇内容主要讲解“怎么用CSS实现圆角折叠菜单”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用CSS实现圆角折叠菜单”吧!代码如下:<html>...
    99+
    2024-04-02
  • 怎么用CSS定位属性实现Html中DIV层叠与悬浮
    这篇文章主要介绍“怎么用CSS定位属性实现Html中DIV层叠与悬浮”,在日常操作中,相信很多人在怎么用CSS定位属性实现Html中DIV层叠与悬浮问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方...
    99+
    2024-04-02
  • css display属性怎么使用
    本文小编为大家详细介绍“css display属性怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“css display属性怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新...
    99+
    2024-04-02
  • css怎么使用float属性
    小编给大家分享一下css怎么使用float属性,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! <html> <head> <style type=&qu...
    99+
    2024-04-02
  • CSS怎么使用behavior属性
    这篇文章主要介绍“CSS怎么使用behavior属性”,在日常操作中,相信很多人在CSS怎么使用behavior属性问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS怎么使用behavior属性”的疑惑有所...
    99+
    2023-07-04
  • css中怎么使用border属性与display属性
    这篇文章主要介绍css中怎么使用border属性与display属性,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! css中如何使用border属性与display属性 bord...
    99+
    2024-04-02
  • css的padding内边距属性怎么用
    今天小编给大家分享一下css的padding内边距属性怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一...
    99+
    2024-04-02
  • CSS中margin属性怎么使用
    CSS中margin属性怎么使用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。CSS中margin问题及使用margin为CSS中非常常用的一...
    99+
    2024-04-02
  • CSS的margin属性怎么使用
    本文小编为大家详细介绍“CSS的margin属性怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS的margin属性怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。CSS语法之margin属性参...
    99+
    2023-07-04
  • CSS的position属性怎么使用
    这篇文章主要介绍“CSS的position属性怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“CSS的position属性怎么使用”文章能帮助大家解决问题。CSS:position属性Posi...
    99+
    2023-07-04
  • CSS的display:table属性怎么使用
    这篇文章主要介绍“CSS的display:table属性怎么使用”,在日常操作中,相信很多人在CSS的display:table属性怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CSS的display...
    99+
    2023-07-04
  • CSS的clear属性怎么使用
    这篇“CSS的clear属性怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“CSS的clear属性怎么使用”文章吧。C...
    99+
    2023-07-04
  • CSS的background属性怎么使用
    这篇文章主要讲解了“CSS的background属性怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS的background属性怎么使用”吧!background 属性是backg...
    99+
    2023-07-04
  • CSS的border属性怎么使用
    本篇内容介绍了“CSS的border属性怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CSS的border属性的定义:Value:&...
    99+
    2023-07-04
  • CSS的clip属性怎么使用
    本篇内容介绍了“CSS的clip属性怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!CSS clip属性用法解析clip属性是一个比较...
    99+
    2023-07-04
  • CSS列表属性怎么使用
    这篇文章主要讲解了“CSS列表属性怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“CSS列表属性怎么使用”吧!CSS 列表从某种意义上讲,不是描述性的文本的任何内容都可以认为是列表。人...
    99+
    2023-07-04
  • CSS的behavior属性怎么使用
    这篇文章主要介绍了CSS的behavior属性怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS的behavior属性怎么使用文章都会有所收获,下面我们一起来看看吧。behavior的语法:Examp...
    99+
    2023-07-04
  • CSS定位属性之固定fixed属性怎么使用
    本篇内容介绍了“CSS定位属性之固定fixed属性怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!C...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作