a)我是否正确地假设HTML5中的脚本正确格式为<script src="script.js"></script>
?
b)如何使用DOMDocument实现正确的结果?
$domImplementation = new \DOMImplementation ();
$docType = $domImplementation->createDocumentType ( 'html', '', '' );
$document = $domImplementation->createDocument ( 'http://www.w3.org/1999/xhtml', 'html', $docType );
$head = $document->createElement ( 'head' );
$script = $document->createElement ( 'script', '' );
$script->setAttribute ('src', 'script.js');
$head->appendChild ( $script );
生成
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="script.js"/>
HTML5验证器说
非void HTML元素上使用的自动关闭语法(
/>
)。忽略斜杠并将其视为开始标记。
答案 0 :(得分:5)
Javascript标记,即使它们通过src=
属性加载外部文件,也无法自动关闭。您可能需要向正在创建的DOM元素添加一些非空内容,以强制它非自行关闭。具有单个空格的textnode可以。