javascript - 我可以将 <PRE> 标签嵌入到 <P> 标签中吗?

标签 javascript getelementsbytagname

为什么 <p> 有两个元素当我只使用一个 <p>标签?

如果<center>标签代替 <pre> ,结果是一样的。

如果<b>标签代替 <pre> ,a.length的结果是1。

<!DOCTYPE html>
<html>
<head>

</head>
<body>
  <p><pre>name: id:</pre></p>
<script>
  a = document.getElementsByTagName("p");
  document.write("LEN:"+a.length+"<BR>");
  for(i=0;i<a.length;i++){
    document.write(a[i].innerHTML+"<BR>");
  }
</script>

最佳答案

<pre>不能在里面 <p> 。因此,当 HTML 解析器遇到 <pre> 时里面<p> ,它将关闭 <p>第一的。然后它遇到</p> ,一个没有开始标签的结束标签,并假设您想要 <p> 。最终的结构是:

<p></p>
<pre>...</pre>
<p></p>

你怎么知道<pre>不能在里面 <p> ?请参阅<p>MDN ,甚至更好 in HTML spec ,并注意“允许的内容:措辞内容”。查看什么是“短语内容”,可以发现它不包括 <pre> .

关于javascript - 我可以将 <PRE> 标签嵌入到 <P> 标签中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60500355/

相关文章:

javascript - jquery 代码重构工具

javascript - 使用 document.write 与逐个节点生成 dom 时的不同 CSS 继承

javascript - 无法使用 Angular 原因 ng-controller 发布帖子

java - 使用 JAVA 将标签从 xml 文件导入到另一个文件

javascript - 查找集合中是否存在具有值的项目

javascript - 为什么我不能在 AngularJS 中使用 ng-show inside 指令?

Javascript 在 li 标签中获取 h2 标签并返回它

php - 使用 PHP DOM 在 html 标记的开头插入创建的元​​素

javascript - selenium 使用 javascript 定位没有 id 或 name 的元素

javascript - 使用纯 javascript(无 JQuery/3rd 方库),如何连接来自 document.getElementsByTagName 的集合以在单循环中迭代