li和li之间有看不见的空白间隔怎么办?写了两个a标签,两个标签之间有空格的情况怎么解决?

本文介绍了浏览器渲染inline元素时产生的空白间隔问题及其解决方法。针对li和li之间,以及a标签之间的空格问题,提出了设置浮动、调整字符大小、使用负字间距等解决方案,并分析了各种方法的优缺点。对于前端开发人员来说,了解这些技巧有助于优化页面布局。
摘要由CSDN通过智能技术生成

原因:浏览器会把inline元素间的空白字符(空格、换行、Tab等)渲染成一个空格;

为了美观,我们通常是一个<li>放在一行,这导致<li>换行后产生换行字符,她变成一个空格,占用了一个字符的宽度。

1. li和li之间有看不见的空白间隔怎么办?

解决方法:

(1)为<li>设置float:left。不足:有些容器不能设置浮动,如左右切换的焦点图等;

(2)将所有<li>写在一行。不足:代码不美观;

(3)将<ul>内的字符大小设置为0(font-size:0)。不足:<ul>中的字符大小也被设置为0,需要额外重新设置其他字符的大小,且在Safari浏览器依然会出现空白间隔;

(4)消除<ul>的字符间隔(letter-spacing:-8px)。不足:将<li>内的字符间隔也设置了,因此需要将<li>内的字符间隔设置为默认(letter-spacing:normal)

视具体情况而定。

2.写了两个a标签,两个标签之间有空格的情况怎么解决?

解决方法:

(1)给a标签加浮动;

(2)将a标签写在一行;

(3)a标签的父级元素设置font-size:0,然后再a标签中设置回来(一定要在a标签中设置,否则不会显示)

(4)给a标签的父标签加字间距letter-spacing:-999px, 在a标签中加:letter-spacing:0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值