当前位置: 首页 > 知识库问答 >
问题:

HTML净化器保留空间

栾烨华
2023-03-14

有没有办法让HTML净化器保留在呈现的HTML中通常会看到的隐式空间?

例如,在以下情况下,您通常希望FooBar之间有一个空格:

Foo<br/>Bar

例1

<div>Foo</div><div>Bar</div>

例2

共有2个答案

韩智明
2023-03-14

看起来HTMLPurifer没有删除空白,它正在一起删除标记,因为它不识别它们(这很奇怪)。

关于Foo

  • 错误行1第3列:无法识别

关于

  • 错误行1第0列:无法识别

您可以通过在Live Demo上启用CollectError来查看这一点。

也许可以尝试允许divbr:http://htmlpurifier.org/live/configdoc/plain.html#HTML.AllowedElements

以下是现场演示的结果:

牧熙云
2023-03-14

我有一个残酷的计划-替换任何标签关闭“

<?php
$text = '<div>test</div><div>me</div>';

$text = preg_replace('/(<\/[a-z]+>)/', '$1 ', $text);
$text = trim(preg_replace('/\s+/', ' ', strip_tags($text)));

var_dump($text);

退换商品

string(7) "test me"
 类似资料:
  • 我的页面的文件夹 我想使用spl_自动加载_寄存器() 我得到跟随消息。 如果插入 在顶部 一切都是工作。 我想加载所有类与spl_autoload_register()只有没有插入 在上面。我怎么能做到呢???

  • 对于简单的数据净化,使用 htmlentities() 函数, 复杂的数据净化则使用 HTML Purifier 库 经 HTML Purifier 4.4.0 测试 在任何 wbe 应用中展示用户输出时,首先对其进行“净化”去除任何潜在危险的 HTML 是非常必要的。 一个恶意的用户可以制作某些 HTML,若被你的 web 应用直接输出,对查看它的人来说会很危险。 虽然可以尝试使用正则表达式

  • 我刚刚开始使用超文本标记语言净化器http://htmlpurifier.org来过滤来自所见即所得编辑器的内容。内容将被显示回给用户或同一组中的其他用户。系统上还有其他组,数据完整性非常重要。 我使用PHP,内容存储在MySQL数据库中。 HTML净化器使用了大量的处理器功能,所以我只想在入站内容上使用它,而不使用任何过滤器直接从数据库显示出站内容。听起来很简单,它被过滤了,所以应该是安全的,但

  • 我的短信有点小问题。在文本的某些部分,我使用了' '来确保该特定单词不会中断(或移动)到新行。举个例子,我做了这样的事情: 所以从理论上讲,这个文本('-is')不应该以一个单词的形式出现在一个新的行中,对吧?我想那是对的。但是...这个技巧给我带来了一个问题,就是在“-”和“is”之间增加了很大的空格...而且我当然不想有那个“大空位”。我将给出结果示例: 如你所见,有一个巨大的空间。所以,我的

  • 问题内容: 我有一个带有详细信息页面的MVC3应用程序。作为其一部分,我有一个描述(从数据库检索),其中有空格和换行符。呈现时,新行和空格将被html忽略。我想对这些空格和换行进行编码,以免被忽略。 你是怎样做的? 我尝试了HTML.Encode,但最终显示了编码(甚至不是在空格和换行符上,而是在其他一些特殊字符上) 问题答案: 只需使用设置样式即可。

  • 问题内容: 在HTML中保留空白的 最佳 方法是什么?我们有很多页面从数据库中提取数据,并且数据中可能有多个空格。呈现的保存数据的HTML元素与锚标记不同 现在最简单的操作是添加一个全局css类,如下所示: 我想知道是否有更好的方法来实现这一点, 而无需 为每个单独的HTML元素分配一个类。 问题答案: 我将使用相同的技术,但需要在数据类包装器内: HTML: