块级元素垂直边框折叠、左右间隙
1⃣️ 垂直边框折叠
问题:有关块级元素包裹块级元素,在底或顶会出现折叠
解决方案:
1.给子盒子或父盒子添加浮动(可能导致父元素塌陷的问题,注意父级元素清除浮动)
2.给父盒子添加padding/border
3.给子盒子或父盒子定位(使用定位时脱离文档流,注意父元素塌陷,定位完全脱离父元素,清除浮动没用)
4.给父盒子添加overflow:hidden;
【推荐】
2⃣️ 下方出现的间隙
在(div包裹div,div包裹img)都是块级包块级常见的情况,内联元素的默认垂直对齐方式是和基线对齐(vertical-align:baseline
),并不是和底部对齐,以及父级元素默认的行高问题。
解决方案:
1.修改 父级行高:line-height:0
;
2.修改 父级元素字体大小:font-size:0
;
3.修改内联元素 对齐方式:vertical-align
:根据需求可以改为middle、top、bottom、text-bottom等值(这种方式解决空隙问题比较好);
3⃣️ 左右间隙
有关多张图片连着排列的(左右)间隙问题:(原因:浏览器把两个img标签之间的空格当成了空白节点)
解决方案:
-
1.多个img标签 写在一行
-
2.在img标签的 父级 上写:
font-size:0;
-
3.给 每一项 添加:
display:block
-
4.使用 letter-spacing属性,设置字符间距,在父级上面设置
style="letter-spacing:-800px"
(letter-spacing的值无论是负多少都不会产生重叠)