初学html、css的同学是不是遇到过这样一个问题?一对好朋友(两个span元素)之间总是存在间隙。就像下图那样:
一一对不快乐的 span,因为他们中间有了间隙
当我们给span元素添加了内容时,两个相邻的span元素的文字之间有一个间隙,这个间隙其实是一个空格。
那这个空格时怎么来的呢?
首先先来看看我们平时的代码书写习惯吧
<body>
<p>
<span>舒克</span>
<span>贝塔</span>
</p>
</body>
我们是优秀的程序猿,代码要求格式要规范,所以我第二个span换行了,而就是这个没毛病的换行,让两个span差生了间隙。
解决方法
第一种:将代码写一行
<body>
<p>
<span>舒克</span><span>贝塔</span>
</p>
</body>
这种方法最是简单粗暴的解决了问题,但是粗暴的方式往往会造成很多不可控的因素,后期的很多场景中也有可能让人崩溃,毕竟团队合作开发项目是多人参与,对于要求代码书写规范的人来说,这样的写法简直压死强迫症…
第二种方法
给父元素添加 font-size:0; 在给span额外添加font-size:;
css样式
<style type="text/css">
p {
font-size:0;
}
span {
font-size:12px;
background-color:pink;
}
</style>
html结构
<body>
<p>
<span>舒克</span>
<span>贝塔</span>
</p>
</body>
这种方法也存在问题,先是font-size被重写一次,再者是一些老版本的浏览器下依旧会有间隙,或者有些浏览器对于font-size:12px;的支持不友好
第三种方法
给span加上浮动,完美解决
css样式
<style type="text/css">
span {
float:left;
background-color:pink;
}
</style>