虽然我知道在标题中包含一个段落,如下所示:
<h1><p>Lorem<br>Ipsum</p></h1>
无效(例如参见这个问题),它仍然可以在所有主要浏览器中正确呈现。
但是一旦我将页面加载到 iFrame 中,它就会像您通常期望浏览器那样分解标题,呈现如下所示的内容:
<h1></h1><p>Lorem<br>Ipsum</p>
为什么在 iFrame 中表现不同?
下面是一个简单的例子:
主要 HTML 文档:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Invalid HTML Example</title>
</head>
<body>
<h1><p>Lorem<br>Ipsum</p></h1>
</body>
</html>
嵌入 Iframe 中:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Iframe</title>
</head>
<body>
<iframe src="iframe-content.html" style="width: 100%; height: 180px;border:none;"></iframe>
</body>
</html>
iframe-content.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Invalid HTML Inside Iframe</title>
</head>
<body>
<h1>
<p>Lorem<br>Ipsum</p>
</h1>
</body>
</html>