带有nowrap的元素会粘在WebKit中的相邻元素上

时间:2010-03-06 11:44:10

标签: html css nowrap

我有一个ul列表,我将其显示为水平菜单。我希望每个li的内容保留在一行,但是整个li项目可以根据需要跳转。类似的东西:

First entry in the menu Second menu entry
These words are short, the LI jumps lines, but doesn't wrap
Yet anoter] [And more] [Some more]

逻辑上,我只是放li {white-space:nowrap;},但WebKit浏览器存在问题。 带有nowrap的项目会粘在相邻的项目上。因此,在上面的情况中,所有li都将位于同一行。

在包装文本块中包含nowrap的隔离元素也是如此。

<p>Visit my sites <a href="http://gabrielradic.com/" style="white-space:nowrap">Gabriel Radic
.com (English)</a> or <a href="http://www.timbru.com/" style="white-space:nowrap">Timbru Blog
(Romanian)</a>.

我期望的是:

访问我的网站 Gabriel Radic .com
Timbru博客

相反,这两个链接最终粘在一起,如:

访问我的网站
Gabriel Radic .com Timbru博客(罗马尼亚语)

有没有一种方法告诉Safari,Chrome和其他人停止抓住人的肘部?

谢谢你的帮助。

2 个答案:

答案 0 :(得分:2)

在这种情况下,使用white-space:nowrap更合适,而非使用display:inline-block

CSS需要在这里和那里进行调整以适应变化,但它可以按预期工作。

答案 1 :(得分:0)

因此,如果我理解正确,您希望列表项中的文本换行,而不是菜单本身,是吗?所以它看起来像:

item one | item two | item number | item four 
                         three

但不要看起来像:

item one | item two | item number three | 
item four 

如果是这种情况,您是否尝试在实际的nowrap而不是列表项上设置ul,因为它是您尝试不包裹的ul?然后为列表项设置宽度,以便它们将换行以适合该宽度。