开发者社区> 问答> 正文

li 与 li 之间有看不见的空白间隔是什么原因引起的?有什么解决办法?

li 与 li 之间有看不见的空白间隔是什么原因引起的?有什么解决办法?

展开
收起
茶什i 2019-11-18 15:12:15 1446 0
1 条回答
写回答
取消 提交回答
  • 浏览器的默认行为是把 inline 元素间的空白字符(空格换行 tab)渲染成一个空格,也就是我们上面的代码 换行后会产生换行字符,而它会变成一个空格,当然空格就占用一个字符的宽度。 解决方案:

    方法一:既然是因为li换行导致的,那就可以将li代码全部写在一排,如下 image.png

    方法二:我们为了代码美观以及方便修改,很多时候我们不可能将

  • 全部写在一排,那怎么办?既然是空格占一个字符的宽度,那我们索性就将
    • 内的字符尺寸直接设为 0,将下面样式放入样式表,问题解决。

      image.png

      但随着而来的就是

      • 中的其他文字就不见了,因为其尺寸被设为 0px 了,我们只好将他们重新设定字符尺寸。 方法三:本来以为方法二能够完全解决问题,但经测试,将 li 父级标签字符设置为 0 在 Safari 浏览器依然出现间隔空白;既然设置字符大小为 0 不行,那咱就将间隔消除了,将下面代码替换方法二的代码,目前测试完美解决。同样随来而来的问题是 li 内的字符间隔也被设置了,我们需要将 <li>内的字符间隔设为默认。 image.png

        之后记得设置 li 内字符间隔

        image.png

2019-11-19 15:19:29
赞同 展开评论 打赏
问答地址:
相关问答
574
0
0
875
1
0
1574
2
0
1994
1
0
4516
1
0
2321
1
0
2746
1
0
5022
1
0
2447
1
0
1758
1
0
问答排行榜
最热
最新
推荐问答

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载