将两个HTML文档嵌入到一个页面中

时间:2011-05-14 23:50:27

标签: html

我想输出两个HTML文档,包装在HTML文档中

是否可以使用HTML执行此类操作?

<html>
  <head></head>
  <body>
    <frameset>
      <frame>
        <html>
          <head></head>
          <body>First page here</body>
        </html>
      </frame>
      <frame>
        <html>
          <head></head>
          <body>Second page here</body>
        </html>
      </frame>
  </body>
</html>

它不一定是框架,但我只想点击服务器一次,因此链接到具有src属性的文档已经输出,它必须是内联的。

5 个答案:

答案 0 :(得分:2)

你的意思是这样的:

<html>
<head>
</head>
<frameset cols="30%,*">
<frame src="page01.html">
<frame src="page02.html">
</frameset>
</html>

答案 1 :(得分:1)

不可能。 iframeframe都不是内嵌的。您方案的最佳选择是提取body标记内容,并将其插入div。然而,CSS将是一个问题 - 必须对它进行一些处理,因此它将仅限于页面的一半。像这样:

<html>
  <head>
    <title>Combined</title>
  </head>
  <body>
    <div id="page1">
      First page here
    </div>
    <div id="page2">
      Second page here
    </div>
  </body>
</html>

CSS转换:body - &gt; #page1(或#page2),#id - &gt; #id,其他任何内容X - &gt; #page1 X

使用iframe s肯定更容易;如果服务器配置良好,它甚至可能不需要单独的连接。

顺便说一句:你的建议可能会呈现,但是AFAIK是非标准的(浏览器猜测你想要什么,而不是遵循规范,浏览器已经习惯了这样做);还有CSS的问题。

答案 2 :(得分:0)

除非您的问题中指定了一个HTML文件 - 两个HTML页面的内容都在一个文件中,否则您将不得不多次访问服务器。

HTTP协议也一次传输一个对象。除非其中一个对象被缓存,否则您还必须与服务器通信两次。

答案 3 :(得分:0)

你可以使用服务器端包含但是如果有两个不同的文件,你将不会发出两个服务器请求。

答案 4 :(得分:0)

这可能有些过分,你并没有真正谈论组件页面的来源,但你可能会查看SiteMesh。它是一个服务器端框架,旨在从网站上运行的其他框架/应用程序中获取输出页面,然后......

  

HTML内容被截获   回到网络浏览器的地方   被解析。 <head>的内容   标记和<body>标记被提取   以及。的元数据属性   页面(例如标题,<meta>标签和   <html><body>的属性   标签)。

然后输出单页。 IIRC,LinkedIn使用它在不同系统生成的页面周围应用一致的标题和其他页面元素。