dongtuoao7987 2014-10-23 23:29
浏览 29
已采纳

如何让Tidy去除内联样式

I'm trying to use Tidy to clean up and transfer some content from an old system.

The system has a lot of inline style overrides which I want to drop completely (I don't want to convert them to classes, just drop them).

I'm using the following config:

$config = array(
    'indent'         => true,
    'output-xhtml'   => true,
    'drop-font-tags' => true,
    'clean' => true,
    'merge-spans'=> true,
    'drop-proprietary-attributes'=> true,
);

And run it like this:

$test = '<p><span style="font-size: 10px;">Some content goes here.</span></p>';

$tidy = new tidy;
$tidy->parseString($test, $config, 'utf8');
$body = $tidy->body();
var_dump($body->value);

But the output is still:

<body>
  <p>
    <span style="font-size: 10px;">Some content goes here.</span>
  </p>
</body>

How do I get Tidy to remove the style="font-size: 10px;" part as well, or drop the span tag altogether.

I can't see anything else in the documentation that would do that.

  • 写回答

1条回答 默认 最新

  • duanjiang7505 2014-10-23 23:36
    关注

    You could just remove the style attribute yourself:

    $test = '<p><span style="font-size: 10px;">Some content goes here.</span></p>';
    $dom = new DOMDocument;                 
    $dom->loadHTML($test);                  
    $xpath = new DOMXPath($dom);           
    $nodes = $xpath->query('//*[@style]');  // Find elements with a style attribute
    foreach ($nodes as $node) {              
        $node->removeAttribute('style');    // Remove style attribute
    }
    $test = $dom->saveHTML();
    $tidy = new tidy;
    $tidy->parseString($test, $config, 'utf8');
    $body = $tidy->body();
    var_dump($body->value);                  
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 统计大规模图中的完全子图问题
  • ¥15 使用LM2596制作降压电路,一个能运行,一个不能
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 经gamit解算的cors站数据再经globk网平差得到的坐标做形变分析
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错
  • ¥20 @microsoft/fetch-event-source 流式响应问题
  • ¥15 ogg dd trandata 报错
  • ¥15 高缺失率数据如何选择填充方式