热搜:前端 nest neovim nvim

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

lxf2023-05-18 01:03:13

盒子模型,说白了,能够放东西的称之为小盒子,例如 divhli 等。像 imginput 这类不可以放东西就并不是小盒子。

盒模型:分成具体内容(content)、添充(padding)、界限(margin)、外框(border)四个部分,具体内容又可分为高(height)、宽(width)。

div 高(height)默认auto,将由子元素的改完、宽(width)

盒子模型种类

IE盒模型(border-box)

IE 盒模型:特性 widthheight 包括 contentborderpadding,是指 content padding border

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

W3C规范盒模型(content-box)

W3C 规范盒模型:特性 widthheight 只包括具体内容 content,不包括 borderpadding

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

转换盒模型

如果你想要转换盒模型很简单,这里要改动 css3box-sizing 特性。

//W3C盒子模型
box-sizing: content-box 
//IE盒子模型
box-sizing: border-box 

margin负数难题

  • margin-top 原素本身会向上移动,同时还会危害下方原素会向上移动;
  • margin-botom 原素本身不容易偏移,但是也会降低本身供css载入高度,进而影响下方原素会向上移动。
  • margin-left 原素本身会往左边挪动,同时还会危害其他原素;
  • margin-right 原素本身不容易偏移,但是也会降低本身供css载入宽度,进而影响右边元素会往左边挪动;

我们首先复位好多个小盒子,随后各自给它设置一下不同类型的 margin 负数,看一下和之前的观点一不一致。

    <style>
      * {
        margin: 0;
        padding: 0;
      }

      body {
        width: 100vw;
        height: 100vh;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .container {
        width: 400px;
        box-sizing: border-box;
        height: 400px;
        background: blue;
      }

      .green {
        width: 200px;
        height: 200px;
        background: green;
      }

      .yellow {
        width: 200px;
        height: 200px;
        background: yellow;
        margin-bottom: -20px;
      }
    </style>
  </head>

  <body>
    <div class="container">
      <div class="green"></div>
      <div class="yellow"></div>
    </div>
  </body>

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

margin-top

我们给墨绿色的小盒子设置一个 margin-top

  .green {
    background: red;
    margin-top: -20px;
  }

结论如下所示,能够看见墨绿色的小盒子本身向上移动了,下方原素也会随着它一起产生偏移。

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

margin-bottom

我们给墨绿色的小盒子设置一个 margin-bottom

  .green {
    background: red;
    margin-bottom: -20px;
  }

结论如下所示,能够看见墨绿色的小盒子本身并没产生偏移,可是相对高度变短了,与此同时下边红色的小盒子往上出现了挪动。

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

margin-left

首先我们要给原素一个波动,使其横着排序,最后我们给墨绿色的小盒子设置一个 margin-left

   .container div{
     float:left
   }
  .green {
    background: red;
    margin-left: -20px;
  }

结论如下所示,能够看见墨绿色的小盒子本身往左边移动了,右边红色的盒子会伴随着它一起产生偏移。

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

margin-right

我们给墨绿色的小盒子设置一个 margin-right

  .green {
    background: red;
    margin-right: -20px;
  }

结论如下所示,能够看见墨绿色的小盒子本身没有出现偏移,可是总宽降低了,与此同时右边红色的小盒子往左边移动了。

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

不能使用上下浮动二列合理布局

理解了 margin ,既能不能使用波动完成二列规划了。

    <style>
      .container {
        width: 400px;
        padding: 10px
      }

      .left {
        width: 100px;
        height: 400px;
        background-color: blue;
      }

      .right {
        width: 300px;
        height: 400px;
        margin: -400px 0 0 100px;
        background-color: green;
      }
    </style>
  </head>

  <body>
    <div class="container">
      <div class="left"></div>
      <div class="right"></div>
    </div>
  </body>

结论如下所示。

盒子模型,说白了,能够放东西的称之为小盒子,例如 div,h

本站是一个以CSS、JavaScript、Vue、HTML为中心的前端开发技术网址。我们的使命是为众多前端工程师者提供全方位、全方位、好用的前端工程师专业知识和技术服务。 在网站上,大家可以学到最新前端开发技术,掌握前端工程师最新发布的趋势和良好实践。大家提供大量实例教程和实例,让大家可以快速上手前端工程师的关键技术和程序。 本站还提供了一系列好用的工具软件,帮助你更高效地开展前端工程师工作中。公司提供的一种手段和软件都要经过精心策划和改进,能够帮助你节约时间精力,提高研发效率。 此外,本站还拥有一个有活力的小区,你可以在社区里与其它前端工程师者沟通交流技术性、交流经验、处理问题。我们坚信,街道的能量能够帮助你能够更好地进步与成长。 在网站上,大家可以寻找你需要的一切前端工程师网络资源,使您成为一名更加出色的网页开发者。欢迎你添加我们的大家庭,一起探索前端工程师的无限潜能!