如何从HTML标签中删除样式属性?

Rog*_*ger 1 html php strip-tags

我想用PHP删除标签中的所有样式.

例如.

原版的:

<body style="color:back;">

最后:

<body>

这是一个例子:

$body_htm='<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>[Some Title] some text...</title>
</head>
<body style="background-color: #F2F2F2; color: #222; font-family: georgia,serif; letter-spacing: -0.01em; line-height: 1.25; margin-bottom: 0.55em; font-size: 1.2em;">
<div style="background-color: #F2F2F2; border: 2px dotted #333; padding: 55px 0 55px 55px;">
<div style="background-color: #F2F2F2; width: 400px;">
<p style="margin-bottom:110px;"><b>Hello!!!</b></p>';
Run Code Online (Sandbox Code Playgroud)

它应该返回:

<html>
<head>
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>[Some Title] some text...</title>
</head>
<body>
<div>
<div>
<p><b>Hello!!!</b></p>';
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

小智 5

一个非常简单的替换可能会做:

preg_replace( '/style=(["\'])[^\1]*?\1/i', '', $subject, -1 );
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助