将段落包含在标题内的行为在 iframe 中与直接在页面中表现不同

问题描述 投票:0回答:1

虽然我知道在标题中包含一个段落,如下所示:

<h1><p>Lorem<br>Ipsum</p></h1>

无效(例如参见这个问题),它仍然可以在所有主要浏览器中正确呈现。

但是一旦我将页面加载到 iFrame 中,它就会像您通常期望浏览器那样分解标题,呈现如下所示的内容:

<h1></h1><p>Lorem<br>Ipsum</p>

为什么在 iFrame 中表现不同?

html iframe browser chromium w3c
1个回答
0
投票

下面是一个简单的例子:

主要 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>
© www.soinside.com 2019 - 2024. All rights reserved.