设置全局margin和padding为0后,<a>标签仍存在边距问题求助
解决inline-block元素间的多余间隙问题
你设置了全局margin和padding清零,但仍出现的间隙并非margin或padding导致,而是inline-block元素在HTML结构中因换行、空格产生的空白字符造成的。以下是几种可行的解决方法:
方法1:移除HTML中元素间的空白
直接把<a>标签连在一起,消除它们之间的换行和空格:
<div class="box"> <a href="#" class="minibox">guideline</a><a href="#" class="minibox">guideline</a><a href="#" class="minibox">guideline</a><a href="#" class="minibox">guideline</a> </div>
方法2:父元素设置font-size: 0,子元素恢复字体大小
给容器.box设置font-size: 0消除空白字符的影响,再在.minibox中重新设置字体大小:
.box { height: 40px; width: 320px; border-top: 3px solid #ff8500; border-bottom: 1px solid #edeef0; font-size: 0; /* 消除空白字符 */ } .box .minibox { padding: 0; margin: 0; text-decoration: none; display: inline-block; font-size: 12px; /* 恢复原有字体大小 */ color: #4C4C4C; width: 80px; height: 40px; line-height: 40px; text-align: center; }
方法3:使用Flex布局(推荐)
给父容器.box设置display: flex,Flex布局会自动消除子元素间的空白间隙,是更现代简洁的解决方案:
.box { height: 40px; width: 320px; border-top: 3px solid #ff8500; border-bottom: 1px solid #edeef0; display: flex; /* 启用Flex布局 */ }
内容的提问来源于stack exchange,提问作者bene
相关产品推荐
相关产品推荐

