在ie、firefox、chrome浏览器上显示的效果不太一样,主要是前面的空格宽度不同。


网上资料说
不同的浏览器会有不同的默认字体。一般 IE默认字体都是宋体,而firefox和chrome的默认字体是Times New Roman,
宋体是字符等宽的字体,但Times New  Roman不是字符等宽的字体,由于浏览器默认字体的不同。
空格符 在不同的浏览器以下的显示宽度也不同。

比如以下代码分别以IE和chrome进行測试

<table>
    <tr>
	<td>我是第一行</td>
    </tr>
    <tr>
	<td>nbsp;nbsp;nbsp;nbsp;我是第二行</td>
    </tr>
    <tr>
	<td>nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;我是第三行</td>
    </tr>
</table>

在chrome显示效果例如以下:<img src="http://img.blog.csdn.net/20140527204458218?

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRteWhvbWUxOTkw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast” alt=”” />

IE9下显示效果例如以下:
空格&amp;nbsp在不同浏览器中显示距离不一致问题解决方法-冯金伟博客园

能够看出两个&nbsp;在chrome中占一个汉字的宽度,而在IE中四个&nbsp;才占一个汉字的宽度。
解决的方法:
一、改动页面的编码格式<meta http-equiv="content-type" content="text/html; charset=gbk">
和页面的编译方式(myeclipse中)

<img src="http://img.blog.csdn.net/20140527204526343?

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvaXRteWhvbWUxOTkw/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast” alt=”” />
然后IE右键改动编码显示格式即可
空格&amp;nbsp在不同浏览器中显示距离不一致问题解决方法-冯金伟博客园

二、(推荐)在空格那一行设置一下字体,把字体设置成随意一种字符等间距的字体即可了。
如:

<div style="font-family: '宋体'">nbsp;nbsp;nbsp;nbsp;我是第二行</div>

PS:nbsp;替换为&nbsp;

假设style="font-family: ‘宋体’" 实现不了,可将"宋体"改为"Times New Roman"

作者:itmyhome