css 有关空白叠加

日期:2021-03-13 类型:科技新闻 

关键词:秀米制作h5,h5如何制作,h5小游戏制作,h5游戏开发,免费的h5制作网站

况1:
当1个元素出現在另外一个元素上面时,第1个元素的底空白边与第2个元素的顶空白边产生叠加。
html构造

<div class="du">上面块</div>
<div class="dd">下面块</div>

css编码

拷贝编码
编码以下:

.du{
margin-bottom: 10px;
background-color: red;
}
.dd{
margin-top: 5px;
background-color: blue;
}

显示信息結果以下

从左往右,各自是IE6、FF、Chrome、Opera的主要表现結果。由照片能够看到,基础理论上有15px高的空白边,变为了10px。

状况2:

当1个元素包括在另外一个元素中时(假定沒有填充或边框将空白边隔开开),它们的顶和底空白边产生了叠加

html构造编码

拷贝编码
编码以下:

<div class="do">
<div class="dm">
<div class="di">內容</div>
</div>
</div>

css编码

拷贝编码
编码以下:

body{
margin: 0;
}
.do{
background-color: red;
}
.dm{
margin-top: 10px;
background-color: green;
}
.di{
margin-top: 5px;
background-color: blue;
}

显示信息結果以下

依据前面提到的,最大为高的说法,3个div空白边叠加起来,最后产生的空白边高为10px,也便是照片上看到的蓝色到顶部的间距。

 

空白边的叠加其实不能说是bug,它实际上有自身的具体实际意义。例如说,由几个段落构成的典型文字网页页面(见下图),第1个段落上面的室内空间等于段落的顶空白边。假如沒有空白边叠加,后续全部段落之间的空白边奖是邻近顶空白边和底空白边的总和。这代表着段落之间的室内空间是网页页面顶部的两倍。

自然,仅有一般文本文档流中块框的竖直空白边才会产生叠加。行内框、波动框或肯定精准定位框之间的空白边不容易叠加。但有时大家不必须叠加时,应该怎么办呢?这里有点不便,由于IE6必须非常解决。为何这样说呢?便是由于IE的haslayout,在这里不探讨haslayout,有兴趣爱好的盆友百度搜索或google下吧,会获得更技术专业的解释的。简易来讲,大家必须激活haslayout,让元素有合理布局(好纠结的说法) 

激活haslayout的方式有许多种,全是设css特性,例如特定height的值、zoom=1等方法。但用得数最多的還是zoom=1方法,由于这个特性是IE独享特性。而其它非IE核心的访问器只必须加上“overflow: hidden;”,好,综合性起来,便是下面的写法。

css编码

拷贝编码
编码以下:

body{
margin: 0;
}
.do{
background-color: red;
overflow: hidden;
zoom: 1;
}
.dm{
margin-top: 10px;
background-color: green;
overflow: hidden;
zoom: 1;
}
.di{
margin-top: 5px;
background-color: blue;
}