我使用PHP的整潔乾淨用戶生成的,包含一個樣式標記HTML頁面:防止PHP整潔的風格標籤數據轉換爲CDATA
<style type="text/css">
body {
padding-top: 60px;
padding-bottom: 40px;
}
</style>
但是,一旦我運行整齊,風格標籤數據轉換爲CData。 我使用Tidy的主要目的是修復文件以及做適當的縮進。
<style type="text/css">
/*<![CDATA[*/
body {
padding-top: 60px;
padding-bottom: 40px;
}
/*]]>*/
</style>
我整理的配置選項 -
$options = array(
'preserve-entities' => true,
'hide-comments' => true,
'tidy-mark' => false,
'indent' => true,
'indent-spaces' => 4,
'new-blocklevel-tags' => 'article,header,footer,section,nav',
'new-inline-tags' => 'video,audio,canvas,ruby,rt,rp',
'doctype' => 'omit',
'sort-attributes' => 'alpha',
'vertical-space' => false,
'output-xhtml' => true,
'wrap' => 180,
'wrap-attributes' => false,
'break-before-br' => false,
'vertical-space' => false,
);
$buffer = tidy_parse_string($buffer, $options, 'utf8');
tidy_clean_repair($buffer);
我試着搜索了很多,但PHP的整潔庫不完全是「有據可查」一個! 因此,在整理清理/修復代碼後,需要手動刪除CDATA。
$buffer = str_replace("/*<![CDATA[*/","",$buffer);
$buffer = str_replace("/*]]>*/","",$buffer);
現在我用這個方法的問題是,風格標籤數據的缺口仍然是搞砸了
<style type="text/css">
body {
padding-top: 60px;
padding-bottom: 40px;
}
</style>
如此反覆,怎麼辦(不完全與頁面的其餘部分對齊)我阻止TIDY在頁面上創建CDATA!
非常感謝!
ahhhh我不敢相信我那樣做......在這一個上花費數小時!非常感謝:) – 2013-03-13 06:56:29
截至今天,OP應該*既*去激活['output-xhtml'](http://tidy.sourceforge.net/docs/quickref.html#output-xhtml)**和**激活['output-html'](http://tidy.sourceforge.net/docs/quickref.html#output-html),即有''output-xhtml'=> false'和''output-html'= > true'(用'HTML Tidy for Linux version 5.4.0 '測試過)。 – 2017-04-20 05:32:30