一尘不染

同一文件中有多个<html> <body> </ html> </ body>

html

我在一个文件中有多个html文件。

<html>
  <body></body>
</html>

<html>
  <body></body>
</html>

<html>
  <body></body>
</html>

结果是我弄乱了html文件。

如何在不删除<html> <body>其余标签的情况下更正此错误?

我正在使用python生成html文件。

  • 如果使用,self.response.out.write(function(query))我会得到一个漂亮的html页面。

  • 如果我第二次使用它,self.response.out.write(function(query2))则页面会变形。

我们可以使用iframe纠正此问题吗?有人可以举个例子吗?


阅读 377

收藏
2020-05-10

共1个答案

一尘不染

一个HTML文档只能有一个html标签和一个body标签。如果仅将多个HTML文档放在一起,则它将是无效的文档,并且浏览器可能无法显示它。

您可以删除重复的标签,但是可能不是那么简单。该文档也只能有一个head标签,因此您必须将单独页面中head标签的内容组合在一起。如果页面包含冲突的样式表,将更加困难,那么您必须重写样式表及其在页面中的用法,以使它们不再冲突。Javascript也是如此;如果脚本名称冲突,则必须重写它们,以使其不再冲突。

页面中可能还存在冲突的内容。一个id只可以在一个页面定义一次,所以如果页面使用相同的标识,你必须改变它们,以及它们在样式表和脚本的使用。

如果确保不存在此类冲突,则应该能够合并页面。

如果您拥有只能控制正文内容的文档,则可以通过添加注释的开始和结束标签来规避此问题,从而忽略一个文件的结尾和下一个文件的开头。这样,您可以保留第一个文件的开头,每个文件的内容以及最后一个文件的结尾:

<html>
  <body>
  content...
  <!--
  </body>
</html>

<html>
  <body>
  -->
  content...
  <!--
  </body>
</html>

<html>
  <body>
  -->
  content...
  </body>
</html>

(请注意,这只会使用首页中的head部分,其他部分将被忽略。)

2020-05-10