Html IE/Firefox/Chrome之间的格式差异

Html IE/Firefox/Chrome之间的格式差异,html,internet-explorer,firefox,google-chrome,formatting,Html,Internet Explorer,Firefox,Google Chrome,Formatting,我试图理解为什么以下内容会在IE/Firefox和Chrome中产生不同的结果: <a href="#">ABC <span style="position: absolute;">XYZ</span></a> 在IE7和Firefox 3.6中,“ABC”加下划线,而“XYZ”不加下划线,它们之间没有可见的空格,即它们作为“ABCXYZ”一起运行 在Chrome9中,整个字符串都有下划线,它们之间有一个空格,即“ABC XYZ” 很明显,它

我试图理解为什么以下内容会在IE/Firefox和Chrome中产生不同的结果:

<a href="#">ABC <span style="position: absolute;">XYZ</span></a>

在IE7和Firefox 3.6中,“ABC”加下划线,而“XYZ”不加下划线,它们之间没有可见的空格,即它们作为“ABCXYZ”一起运行

在Chrome9中,整个字符串都有下划线,它们之间有一个空格,即“ABC XYZ”

很明显,它们对
位置:绝对
的处理方式各不相同,所以我试图找出原因。这个例子是从一段较大的代码中提炼出来的,其中绝对定位是必要的,所以我试图让IE/Firefox和Chrome看起来都一样


我试图在span上指定
文本装饰:none
,以去除“XYZ”上的下划线,但Chrome忽略了这一点。

您是否尝试过使用
显示:块
显示:内联块与跨度


位置:绝对位置
内联
元素一起使用时可能会出现问题(这是
的默认值)

您是否尝试了
而不是“ABC”后面的空格?这可能有助于解决间距问题。没错。不幸的是,我试图理解下划线而不是间距,因为我使用绝对定位将跨度移动到我想要的位置。我发布了间距的东西,作为不同浏览器如何以不同方式呈现相同代码的另一个例子,但这绝对是强制间距行为的一种方式。我使用了它,但没有效果。它在firefox中运行良好,但在chrome中不起作用。