2

http://jsfiddle.net/3BFGU/27/

有谁知道为什么包含文本“ABC”的跨度宽度返回 0。

1) 仅在 Firefox 中发生。2)如果我删除两者之间的跨度,它可以正常工作。(http://jsfiddle.net/3BFGU/30/)

4

1 回答 1

2

不知道为什么 - 这可能是一个错误;然而, ...

Span 默认情况下不应该有任何宽度属性,当然它们最终会在浏览器呈现它之后进行。您可以做的是使它们成为块状元素,这应该可以解决它:

span { display:inline-block; }

编辑:

其他有趣的事情是,如果您删除 ABC 跨度和它的包装器之间的所有空白,它将正常工作。这可能与空白和包装有关。浏览器可能无法提供宽度,因为容器可能从一条线开始并在另一条线结束。这可能解释了为什么将其设置为块可以修复它,因为将容器设置为块可能会使整个容器保持在一起。

于 2012-09-27T00:49:03.773 回答