打破巨大的URL,使它们不会溢出

问题描述 投票:6回答:4

有没有办法在网站上渲染时强制使用像http://www.google.de/search?q=65daysofstatic&hl=de&safe=off&prmd=ivnsl&source=lnms&tbm=isch&ei=P9NkToCRMorHsgaunaClCg&sa=X&oi=mode_link&ct=mode&cd=2&ved=0CBkQ_AUoAQ&biw=1697&bih=882这样的巨大网址?我宁愿缩短它,但在我工作的地方他们已经让我显示整个网址,但我只有320px的空间来显示它并且它溢出。

溢出:隐藏,也不是一个选项,并且只是忽略包含url的td添加样式。

css url css3 word-wrap line-breaks
4个回答
13
投票

CSS3有一个新功能:

word-wrap:break-word;

您可以看到一个实例here(您必须拥有与该新功能兼容的浏览器)。

它也与StackOverflow采用的tecnique相同,如果你检查你的长URL你会注意到。

或者你可以尝试Hyphenator


8
投票
-ms-word-break: break-all;
     word-break: break-all;

     // Non standard for webkit
     word-break: break-word;

-webkit-hyphens: auto;
   -moz-hyphens: auto;
        hyphens: auto;

以上适用于Internet Explorer 8 +,Firefox 6 +,iOS 4.2,Safari 5.1+和Chrome 13+。


4
投票

在Chrome中,word-wrap不起作用。你应该使用:

word-break: break-all;

如果您只想在标签上应用它,那么您应该使用:

a {word-break: break-all;}

请注意,break-all甚至可以拆分单词,所以一个单词可以从一行开始到另一行结束,这就是为什么仅在a标签上应用它是个好主意。如果你知道你的链接总是包含单词(例如,不是像mylink / abcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz1234567890abcdefghijklmnopqrstuvwxyz1234567890那样),那么你可以在body标签级别应用以下内容(这样一个单词不会分成2行):

body {word-break: break-word;}

1
投票

我使用此规则仅影响锚点。

.my-paragraph p a[href] {
  word-wrap:break-word;
}
© www.soinside.com 2019 - 2024. All rights reserved.