我有一堆非常长的文件名,这些文件名导致我的HTML格式溢出。所有这些文件名都使用下划线而不是空格,并且如果它们是空格,则很容易断开/包装。像这样。

这是_is_an_example_of_a_really_long_filename_that_uses_underscores_instead_of_spaces.pdf

有没有办法告诉CSS将文本中的下划线视为空格或连字符,从而也将下划线换行/换行?像这样。

这里_是_一个_例子_的_一个_真的_长_
file_name_that_uses_underscores_
代替_of_spaces.pdf

就我的目的而言,我无法使用脚本来执行此操作。我也不想使用word-wrap:break-word技巧,因为在没有指定宽度的情况下通常无法使用。而且,它在单词中间任意中断。

谢谢。

最佳答案

您可以使用<wbr>标记(http://www.quirksmode.org/oddsandends/wbr.html),该标记使浏览器无论放置在哪里都可以中断。

因此,您的HTML应该是:

Here_<wbr>is_<wbr>an_<wbr>example_<wbr>of_<wbr>a_<wbr>really_<wbr>...

您可以在输出HTML之前在服务器端添加此标记。

另一种选择是实体&#8203;,它是零宽度的空间。有时,这在某些浏览器上效果更好。

09-16 14:56