【问题标题】:asp.net continuous string wrapasp.net 连续字符串换行
【发布时间】:2009-04-30 20:26:19
【问题描述】:

好吧,看来,出于某种原因(显然我可能做错了),我在使用 Asp.net 包装连续行时遇到了一些问题。

假设我有 800 像素的“m”字符,好吧,我的表格单元格被扩展到那个长度。我不希望这样,我希望单元格在 300px 后自动断开连续线。

为此,我尝试应用 word-wrap:break-word css 样式。没用。现在呢?

我是否解析行,在一定数量的字符后插入显式换行符?这对我来说似乎不是很干净。有什么想法吗?

【问题讨论】:

    标签: asp.net css


    【解决方案1】:

    您可以每隔几个 m 插入一个 <wbr>(鲜为人知的 html 元素)。它不是 100% 兼容所有东西,但它适用于大多数浏览器:

    <wbr>(换行符)表示:“如果浏览器愿意,可以在此处插入换行符。”如果浏览器认为不需要换行,则不会发生任何事情。

    所以你会做这样的事情:

    mmmmmmmmm<wbr>mmmmmmmmmm<wbr>mmmmmmmmmmm<wbr> (etc.)
    

    这里有更多信息:http://www.quirksmode.org/oddsandends/wbr.html

    【讨论】:

    • ­也可以,但无论何时发生中断,它都会以连字符出现。所以只要你不介意...
    【解决方案2】:

    你真的有 800px 的“m”还是只是测试数据?如果那是真实数据,那么是的,您将不得不在某处创建一些空白。 HTML 解析器不会对溢出元素的文本进行换行,除非该文本中包含允许对文本进行换行的空格。

    如果 m 是测试字符串并且不反映真实数据,我建议您使用一些虚拟文本(如 Lorem Ipsum)进行测试,因为它的间距更类似于常规文本。

    【讨论】:

    • 其实这不是“我的”测试数据。我的老板以他试图破坏我的应用程序的方式测试字段,以测试内容的限制。我想我可以在平均长度的非破坏字符内容之后施加有条件的换行符。不过感谢您的帮助。我想知道是否可以像“自动换行”那样强制换行。不知何故,它可以在 IE7 上的 div 上运行,但不能在 TD 上运行......可能只是尝试一些东西,见鬼去吧。
    • 试用后:不,我也做不到。试图在 div 的样式中插入“wordwrap:break-word”,但它也不喜欢这样。为什么它可以在简单的页面中工作,但不能嵌入到表格中?
    猜你喜欢
    • 1970-01-01
    • 2013-03-31
    • 2021-03-13
    • 1970-01-01
    • 1970-01-01
    • 2010-10-23
    • 2022-06-10
    • 2021-12-01
    • 1970-01-01
    相关资源
    最近更新 更多