返回顶部
首页 > 资讯 > 前端开发 > VUE >css中什么是外边距折叠
  • 940
分享到

css中什么是外边距折叠

2024-04-02 19:04:59 940人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关CSS中什么是外边距折叠的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在 CSS 中,所有的元素都被一个个的 “盒子(box)” 包围着,我们广泛地使用

这篇文章给大家分享的是有关CSS中什么是外边距折叠的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

在 CSS 中,所有的元素都被一个个的 “盒子(box)” 包围着,我们广泛地使用两种“盒子” —— 块级盒子 (block box) 和 内联盒子 (inline box)。

什么是 CSS 盒模型?

在 CSS 中,盒模型(box model)是在设计和布局时使用。

盒模型的定义可以分成这几部分:

  • Content box: 这个区域是用来显示内容,大小可以通过设置 widthheight.

  • Padding box: 包围在内容区域外部的空白区域; 大小通过 padding 相关属性设置。

  • Border box: 包裹内容和内边距。大小通过 border 相关属性设置。

  • Margin box: 这是最外面的区域,是盒子和其他元素之间的空白区域。大小通过 margin 相关属性设置。

css中什么是外边距折叠

块级盒子完整地应用了 CSS 盒模型,内联盒子只使用盒模型中定义的部分内容。

box-sizing

box-sizing 属性定义了浏览器应该如何计算一个元素的总宽度和总高度。

  • content-box(默认值),即标准盒模型,width: 100px 指的是内容区会有 100px 宽。

    • 盒子的大小 = content(100px) + padding + border

  • border-box,即替代(IE)盒模型,width: 100px 指的是 内容区 + 边框 + 内边距 的总和是 100px 宽。

    • 盒子的大小 = content + padding + border = 100px

不论那种模型,margin 都是不计入实际大小 —— 当然,它会影响盒子在页面所占空间,但是影响的是盒子外部空间。

display

这里可以补充一个概念 -- 内部和外部显示类型。

  • 外部显示类型,我们通过对盒子 display 属性的设置,比如 inline 或者 block ,来控制盒子的是内联还是块级。

  • 内部显示类型,它决定了盒子内部元素是如何布局的。

如果设置 display: flex,在一个元素上,外部显示类型是 block,但是内部显示类型修改为 flex。 该盒子的所有直接子元素都会成为 flex 元素,会根据 弹性盒子(Flexbox )规则进行布局。

还有一个特殊的值 -- display: inline-block,它在内联和块之间提供了一个中间状态。这对于以下情况非常有用:不发生换行,但可以设定宽度和高度,也就是说实现了块级的部分效果:

  • 设置 widthheight 属性会生效。

  • padding, margin, 以及 border 会推开其他元素。

行内元素 / 块级元素

html4 中,元素被分成两大类: inline (内联元素) 与 block (块级元素)。

1. 什么是行内元素?

一个行内元素只占据它对应标签的边框所包含的空间。

常见的行内元素有 abspanimgstrongsub supbuttoninputlabelselecttextarea

2. 什么是块级元素?

块级元素占据其父元素(容器)的整个空间,因此创建了一个“块”。通常浏览器会在块级元素前后另起一个新行。

常见的块级元素有 divulollidldtddh2h3 h4h5 h6h7 p

3. 区别?

  • 格式上(默认情况),行内元素不会换行,而块级元素都会换行。

  • 内容上(默认情况),行内元素只能包含数据和其他行内元素。而块级元素可以包含行内元素和其他块级元素。

  • 在属性上

    • widthheight 属性可以发挥作用,

    • 内边距(padding)、外边距(margin) 和 边框(border) 会将其他元素从当前元素周围“推开”

    • widthheight 设置无效(可以设置 line-height),

    • 内边距(padding)、外边距(margin) 和 边框(border) 在 上下方向 不会对其他元素产生影响。

    • 行内元素

    • 块级元素

css中什么是外边距折叠

外边距(margin)折叠

块的上外边距(margin-top)和下外边距(margin-bottom)有时合并(折叠)为单个边距,其大小为单个边距的最大值(或如果它们相等,则仅为其中一个),这种行为称为 边距折叠

什么情况才会出现

2 个或多个毗邻的的普通流中的块元素垂直方向上的 margin 会折叠

  • 毗邻: 是指没有被非空内容、padding、border 或 clear 分隔开

  • 垂直方向: 是指只有垂直方向的 margin 才会

如何解决?

  • 创建了 BFC 的元素 和它的子元素/兄弟元素不会发生折叠

  • 设置 padding / border ,一些具体的场景:

    • 父元素的 margin-top 和子元素的 margin-top 发生重叠。

      发生重叠是因为它们是相邻的,所以我们可以通过这一点来解决这个问题。我们可以为父元素设 border-toppadding-top 值来分隔它们。

    • 高度为 auto 的父元素的 margin-bottom 和子元素的 margin-bottom 发生重叠。

      发生重叠一个是因为它们相 邻,一个是因为父元素的高度不固定。因此我们可以为父元素设置 border-bottompadding-bottom 来分隔它们,也可以为父元素设置一个高度,max-heightmin-height 也能解决这个问题。

    • 是没有内容的元素,自身的 margin-topmargin-bottom 发生的重叠。

      我们可以通过为其设置 borderpadding 或者高度来解决这个问题。

触发 BFC 的因素

  • float(除了 none)

  • overflow(除了 visible)

  • display(table-cell / table-caption / inline-block)

  • position(除了 static / relative)

感谢各位的阅读!关于“css中什么是外边距折叠”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: css中什么是外边距折叠

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

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

猜你喜欢
  • css中什么是外边距折叠
    这篇文章给大家分享的是有关css中什么是外边距折叠的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。在 CSS 中,所有的元素都被一个个的 “盒子(box)” 包围着,我们广泛地使用...
    99+
    2024-04-02
  • 怎么在css中折叠外边距
    怎么在css中折叠外边距?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。先看一个简单示例:<style>    .slide1...
    99+
    2023-06-08
  • css折叠外边距怎么实现
    这篇文章主要介绍“css折叠外边距怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css折叠外边距怎么实现”文章能帮助大家解决问题。先看一个简单示例:<style> &n...
    99+
    2023-07-05
  • CSS中怎么叠加外边距
    CSS中怎么叠加外边距,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。<style type="text/css&...
    99+
    2024-04-02
  • css中的外边距是什么
    小编给大家分享一下css中的外边距是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!   css外边距margin属性值最多...
    99+
    2024-04-02
  • CSS代码如何叠加外边距
    本篇内容主要讲解“CSS代码如何叠加外边距”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS代码如何叠加外边距”吧!代码如下:<style type="text/cs...
    99+
    2023-07-04
  • 如何在CSS中防止外边距重叠
    今天就跟大家聊聊有关如何在CSS中防止外边距重叠,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。但是边界的重叠也有例外情况:水平边距永远不会重合。在规范文档中,2个或以上的块级盒模型相...
    99+
    2023-06-08
  • 如何进行外边距折叠Collapsing margins的分析
    如何进行外边距折叠Collapsing margins的分析,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。外边距折叠,是属于盒模型部分的一个重...
    99+
    2024-04-02
  • css中外边距吞并是什么意思
    这篇文章给大家分享的是有关css中外边距吞并是什么意思的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 外边距分隔隔离分散指的是,当两个垂直外边距相遇时,它们将形成一个外边距。...
    99+
    2024-04-02
  • CSS边距重叠怎么办
    这篇“CSS边距重叠怎么办”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“CSS边距重叠怎么办”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们进入主题吧。提出问题...
    99+
    2023-06-08
  • css中内边距和外边距怎么设置
    css 中的内边距和外边距用于设置元素周围空间的距离:内边距控制元素内容与边框之间的空间,语法:padding: ;外边距控制元素边框与其他元素之间的空间,语法:margin: ; C...
    99+
    2024-04-28
    css
  • css中内边距和外边距的区别
    css 中,内边距和外边距的区别为:作用范围:内边距用于内容,外边距用于边框;空间位置:内边距在边框内,外边距在边框外;影响:内边距不影响元素大小,而外边距会。 CSS 中内边距和外边...
    99+
    2024-04-28
    css
  • CSS外边距属性有什么用
    这篇文章将为大家详细讲解有关CSS外边距属性有什么用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 属性 形貌 CSS margin ...
    99+
    2024-04-02
  • css的内边距是什么
    本篇内容介绍了“css的内边距是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • css中margin值和垂直外边距重叠的示例分析
    这篇文章主要介绍了css中margin值和垂直外边距重叠的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。并列盒子的margin(双margin的重叠)面试题:一个盒子...
    99+
    2023-06-08
  • CSS外边距怎么应用
    本篇内容主要讲解“CSS外边距怎么应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“CSS外边距怎么应用”吧! 假如有一个空元素,它有外边距,然而不有边框或加...
    99+
    2024-04-02
  • CSS外边距怎么定义
    这篇文章主要为大家展示了“CSS外边距怎么定义”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“CSS外边距怎么定义”这篇文章吧。   围绕在元素边框的空白区域是...
    99+
    2024-04-02
  • css中内边距和外边距分别如何表示
    内边距和外边距是 css 中用于控制元素周围空白空间的属性。内边距设置元素内容与元素边框之间的空间,通过 padding 属性设置;外边距设置元素边框与相邻元素之间的空间,通过 marg...
    99+
    2024-04-28
    css
  • css如何实现左外边距以外所有其他外边距都是auto
    这篇文章主要介绍css如何实现左外边距以外所有其他外边距都是auto,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 再来看另外一个例子。如果希望除了左外边距以外所有其他外边距都是 ...
    99+
    2024-04-02
  • Css中如何合并外边距
    这篇文章将为大家详细讲解有关Css中如何合并外边距,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一般发生外边距合并主要有以下三种情况:1.相邻兄弟姐妹元素两个兄弟元素之间...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作