(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();