这个标题可能有点令人困惑,所以让我详细说明一下。
我正在使用 HTML_purifier 来清理用户输入,尽管在这种情况下,唯一使用它的用户将是我自己(位于受密码保护的文件夹中)。长话短说,我希望能够将图像标签代码添加到网络表单中,然后在它发送的页面上也使用该代码来显示所述图像。
但是我需要在图像标签中添加 css 属性,其中之一是
display:block
无论如何,默认情况下 HTML_purifier 会删除此内容,详细 here因为 CSS.allowTricky 选项。据我了解,如果您将 CSS.allowTricky 选项设置为 True,那么它应该允许
display:block
但是,执行此操作后,它仍然会删除它,只是想知道以前是否有人这样做过,因为我在网上找不到太多有关它的文档?它不会在系统日志中生成任何错误,因此我假设它是正确的实现,但没有按预期工作。
我现在的代码。
include('HTMLPurifier.standalone.php');
$config = HTMLPurifier_Config::createDefault();
$config->set('CSS.AllowTricky', true);
* 更新**
代码应该将配置对象(代码已经设置)传递给 html purifier 对象。把它们放在一起应该看起来像这样。
include('HTMLPurifier.standalone.php');
$config = HTMLPurifier_Config::createDefault();
$config->set('CSS.AllowTricky', true);
$purifier = new HTMLPurifier($config);
最佳答案
http://htmlpurifier.org/phorum/read.php?3,6724 的重复项(解决方案是将配置对象传递给 HTML Purifier 对象,以便实际应用配置。)
关于即使 CSS.AllowTricky 设置为 True,HTML_purifier 也会剥离显示 :none css from images,?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13954267/