两个盒模型之间的空隙

html文档中的每个元素都被描绘成矩形盒子,这些矩形盒子通过一个模型来描述其占用空间,这个模型称为盒模型。盒模型通过四个边界来描述:margin(外边距),border(边框),padding(内边距),content(内容区域),这个大家都知道,那什么是两个盒模型之间的空隙呢?该怎么清除它呢?

假设有一个class为content的父div,里面包含两个子div,这两个子div要同一行显示,我们想要两个子div紧紧连接在一起,所以把它们的margin和padding值全部设为0。

 1 <style type="text/css">
 2     .red{
 3         display: inline-block;
 4         margin: 0;
 5         padding: 0;
 6         width: 100px;
 7         height: 100px;
 8         background: red;
 9     }
10     .green{
11         display: inline-block;
12         margin: 0;
13         padding: 0;
14         width: 100px;
15         height: 100px;
16         background: green;
17     }
18 </style>
1 <div class="content">
2     <div class="red"></div>
3     <div class="green"></div>
4 </div>

我们来看看结果

这时我们发现结果没有我们想象中那么美好,这是因为两个div之间还有些空白字符。我们有两种解决方法:

既然是空白字符的锅,我们就在父元素设置他们的font-size为0,或者,直接把空白字符删掉

1.方法一:font-size设为0

我们把父元素的font-size设置为0

1 .content{
2     font-size: 0px;
3 }

这时的效果还不是我们想要的,因为我们会发现子元素里面的字消失了。

这是因为子元素没有设置的样式会默认继承父元素的,所以我们在两个子元素设置相应的font-size就可以了,浏览器默认为16px

 1 .content{
 2     font-size: 0px;
 3 }
 4 .red{
 5     display: inline-block;
 6     margin: 0;
 7     padding: 0;
 8     width: 100px;
 9     height: 100px;
10     background: red;
11     font-size: 16px;
12 }
13 .green{
14     display: inline-block;
15     margin: 0;
16     padding: 0;
17     width: 100px;
18     height: 100px;
19     background: green;
20     font-size: 16px;
21 }

现在的结果就完美了

2.方法二:删除空白字符

这种做法虽然相对来说比较方便,但是个人特别不推荐这种做法,因为会影响我们对代码的阅读

1 <div class="content">
2     <div class="red">空白</div><div class="green">字符</div>
3 </div>

想象一下如果我们要做的不止一个盒子呢?看起来会特别乱,不利于后期维护,虽然说结果是一样的

时间: 2024-10-02 00:01:13

两个盒模型之间的空隙的相关文章

CSS3 常用属性(三)-- 用户界面、文字、两种盒模型

用户界面--column 关于用户界面,我们先了解一下在块元素中写文字时,浏览器中的呈现情况,这个其实很明显,所有的文本内容会在块元素内从左到右一个个字排列,排满后,从上到下一排排渲染--然而,有些时候,页面需求的呈现方式是,类似于报纸似得,将一段文本内容,分成多列布局显示. 用户界面使用的示例如下: .font{ width:300px; height:300px; border:1px solid #000; margin:0px auto; column-count:3; /* 定义数量

CSS两种盒模型

盒模型有两种,W3C 和IE 盒子模型 W3C定义的盒模型包括margin.border.padding.content,元素的宽度width=content的宽度 IE盒模型与W3C盒模型的唯一区别就是元素的宽度,元素的width=border + padding + content IE定义的盒模型较为合理,所以在css3中新增了box-sizing,包含两个属性content-box和border-box. content-box 元素的width = content  border-bo

css的两种盒模型

W3C标准盒模型 在标准盒模型中,width指content部分的宽度. IE的盒模型 在IE盒模型中,width表示content+padding+border这三个部分的宽度 box-sizing的使用 定义使用哪种盒模型的属性 box-sizing:content-box  是W3C 盒子模型 box-sizing:border-box 是IE盒子模型也叫怪异模型 box-sizing:padding-box   padding计算入width内,不包括border 原文地址:https:

IE盒模型和标准盒模型之间的差别

原文地址:https://www.cnblogs.com/shun1015/p/12411273.html

标准盒模型与IE盒模型

1. 盒模型的组成 所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用.CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和实际内容.盒模型允许我们在其它元素和周围元素边框之间的空间放置元素. 盒模型是CSS中一个重要概念,文档中的每个元素被描绘为矩形盒子.渲染引擎的目的就是判定大小,属性.盒模型属性有: margin:外边距 padding:内边距 border:边框 content:内容 2. 标准盒模型 标

CSS基础 - 盒模型、浮动、定位

1 CSS盒模型 在以前,程序员们是通过表格来对一个网页进行排版,也就是通过大小不一的表格和表格嵌套来定位排版网页的内容.后来,CSS出现之后,在网页布局中,为了能够使页面中的各个部分合理的进行组织,开发人员们总结出了一套完整的.行之有效的原则和规范,也就是"盒模型".它是通过使用CSS来定义大小不一的盒子和盒子嵌套来编排网页. 因为用这种方式排版的网页代码简洁,更新方便,能兼容更多的浏览器. 页面中的所有元素都可以看成是一个盒子,一个页面由很多的盒子组成,这些盒子之间会相互影响,所以

理解盒模型

DIV+CSS有两种盒模型 标准w3c盒模型 IE盒模型 如何让浏览器能够按标准盒模型来处理,就是在网页的顶部加上DOCTYPE声明.如果不加 DOCTYPE声明,那么各个浏览器会根据自己的行为去理解网页. 标准盒模型中width和height指的是内容区域的宽度和高度,增加内边距.边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸:但在IE6浏览器的width不是内容的宽度,而是内容.内边距和边框的宽度总和. 实际上IE的盒模型更加合理,w3c意识到了这个问题,重新定义盒模型是不可能

css3 盒模型

0,前言 在css2.1 之前,我们都熟知的两种盒模型,一种是w3c标准盒模型,另外一种是怪异模式下的盒模型.在css3之前我们一直使用的是标准盒模型,但是标准盒模型的宽度总是需要小心的去使用,稍有不甚,有会带来混乱.css3让我们之前了解的怪异模式能够很好的在页面中使用,下面来了解下上面提到的w3c标准盒模型和怪异模式下的盒模型. div { width: 200px; height: 100px; padding: 20px; border:30px solid blue; margin:

关于盒模型的一点总结

标准w3c盒模型图示 关于怪异盒模型和标准盒模型的对比 关于怪异盒模型盒标准盒模型之间的转换 原文地址:https://www.cnblogs.com/paradise-zzz/p/8458087.html