我使用HTMLPurifier 4.6.0来过滤HTML。我的HTML有这一行:
<pre style="overflow-x: scroll; word-wrap: normal; white-space: pre;">
提交后,它已被截断:
<pre style="white-space: pre;">
我想仅允许&lt; pre&gt; style&#34; overflow-x:scroll&#34;和&#34;自动换行:正常&#34;。
我找到了这个页面http://htmlpurifier.org/docs/enduser-customize.html并尝试了:
$config->set('HTML.DefinitionID', 'enduser-customize.html');
$config->set('HTML.DefinitionRev', 1);
$config->set('Cache.DefinitionImpl', null); // TODO: remove this later!
if ($def = $config->maybeGetRawHTMLDefinition()) {
$def->addAttribute('pre', 'style', 'overflow-x');
}
我在设置addAttribute()时遇到问题。有人可以帮我吗?谢谢!
答案 0 :(得分:0)
我找到了一个使用此设置的解决方案:
$css = $config->getCSSDefinition();
$css->info['overflow-x'] = new HTMLPurifier_AttrDef_Enum(array('scroll'));
$css->info['word-wrap'] = new HTMLPurifier_AttrDef_Enum(array('normal'));