【发布时间】:2012-09-26 15:21:59
【问题描述】:
我正在尝试缩小 HTML 字符串,但也要以特定字符数换行文本。所以当 HTML 字符串包含嵌入的 CSS 时,我需要一个特殊的函数。我曾尝试使用 php 函数“wordwrap”,但它的双引号 (") 和单引号 (') 中的换行文本会破坏显示。例如,如果我们有以下字符串:
font-family: Arial, 'Helvetica Nueue', 'Times Roman'
现在如果我们在 31 处对此进行自动换行,它将变为:
font-family: Arial, 'Helvetica
Nueue', 'Times Roman'
这将导致浏览器在加载时误解 CSS 字符串。
有谁知道或编写了一个自动换行函数,当文本包含在引号(单引号或双引号)中时不会换行?
谢谢!
更新
很抱歉只要求代码。这就是我的设想(我目前正在编程):
遍历 CSS 字符串并抓取中间的字符串块; } 或 { 如果它关闭了突破限制,则将子字符串添加到数组中。循环完成后,使用 "\n" 作为胶水将数组内爆成字符串。
有人有更好/不同的方法吗?
【问题讨论】:
-
你举的例子是错误的。 PHP 的
wordwrap函数的行为与您所说的不同。到目前为止,您还尝试过什么?请发布您的代码。 -
@hakra - 你是对的,我已经更新了我的问题。我还没有写任何东西……如果其他人已经解决了这个问题,我不想重新发明轮子。
-
你只需要关心那个 CSS 片段。或者会不会有更多来自 CSS 语法的东西,比如双引号、括号等等?
-
另外,您基本上只要求代码。这在这个网站上不太受欢迎。你应该展示——即使只是用伪代码——你将如何解决这个问题。
-
如果您的目标是缩小 HTML 字符串,为什么还要关心自动换行?添加这些额外的换行符只会不必要地“膨胀”你的字符串。