我如何(使用 PHP)从具有特定类的 DIVS 中删除样式属性?由于“拖放”过程,一些 DIV 元素会被不必要的样式污染,这可能会导致以后出现问题。
我知道我可以在“拖放”过程之后使用 JavaScript 删除样式属性,但我只在服务器处理 HTML 时删除它们(用于将 HTML 作为电子邮件发送)。
我如何(使用 PHP)从具有特定类的 DIVS 中删除样式属性?由于“拖放”过程,一些 DIV 元素会被不必要的样式污染,这可能会导致以后出现问题。
我知道我可以在“拖放”过程之后使用 JavaScript 删除样式属性,但我只在服务器处理 HTML 时删除它们(用于将 HTML 作为电子邮件发送)。
据我所知,这不是一个特别困难的问题。您需要将 HTML 加载到 DOMDocument 结构中,然后使用简单的 XPath 属性选择器来查找相关元素并DOMElement::removeAttribute
删除样式属性。您的代码可能如下所示:
$dom = new DOMDocument;
$dom->loadHTML($dirtyHtml);
$xpath = new DOMXPath($dom);
$divs = $xpath->query('//div[@class="someclass"]');
foreach ($divs as $div) {
$div->removeAttribute('style');
}
$cleanHtml = $dom->saveHTML();