I want to include an HTML page inside an HTML page. Is it possible?
I don't want to do it in PHP, I know that in PHP, we can use include for this situation, how can I achieve the same purely in HTML without using the iframe and frame concept?
I want to include an HTML page inside an HTML page. Is it possible?
I don't want to do it in PHP, I know that in PHP, we can use include for this situation, how can I achieve the same purely in HTML without using the iframe and frame concept?
 
    
     
    
    You can use an object element
<object type="text/html" data="urltofile.html"></object>
or, on your local server, AJAX can return a string of HTML (responseText) that you can use to document.write a new window, or edit out the head and body tags and add the rest to a div or another block element in the current page.
 
    
    If you're just trying to stick in your own HTML from another file, and you consider a Server Side Include to be "pure HTML" (because it kind of looks like an HTML comment and isn't using something "dirty" like PHP):
<!--#include virtual="/footer.html" -->
 
    
    If you mean client side then you will have to use JavaScript or frames.
Simple way to start, try jQuery
$("#links").load("/Main_Page #jq-p-Getting-Started li");
More at jQuery Docs
If you want to use IFrames then start with Wikipedia on IFrames
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<html>
  <head>
        <title>Example</title>
  </head>
  <body>
        The material below comes from the website http://example.com/
        <iframe src="http://example.com/" height="200">
            Alternative text for browsers that do not understand IFrames.
        </iframe>
   </body>
</html>
 
    
    You could use HTML5 for this:
<link rel="import" href="/path/to/file.html">
Update – July 2020: This feature is no longer supported by most major browsers, and is generally considered obsolete. See caniuse.com for the list of browsers which do still support it.
 
    
     
    
    <iframe src="page.html"></iframe>
You will need to add some styling to this iframe. You can specify width, height, and if you want it to look like a part of the original page include frameborder="0".
There is no other way to do it in pure HTML. This is what they were built for, it's like saying I want to fry an egg without an egg.
 
    
     
    
    If you're willing to use jquery, there is a handy jquery plugin called "inc".
I use it often for website prototyping, where I just want to present the client with static HTML with no backend layer that can be quickly created/edited/improved/re-presented
For example, things like the menu and footer need to be shown on every page, but you dont want to end up with a copy-and-paste-athon
You can include a page fragment as follows
<p class="inc:footer.htm"></p>
 
    
    <html>
<head>
<title>example</title>
    <script> 
   $(function(){
       $('#filename').load("htmlfile.html");
   });
    </script>
</head>
<body>
    <div id="filename">
    </div>
</body>
 
    
     
    
    The best which i have got: Include in your js file and for including views you can add in this way
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
    <title>Bootstrap</title>
    <!-- Your custom styles (optional) -->
    <link href="css/style_different.css" rel="stylesheet">
</head>
<body>
    <script src="https://www.w3schools.com/lib/w3data.js"></script>
    <div class="">
      <div w3-include-html="templates/header.html"></div>
      <div w3-include-html="templates/dashboard.html"></div>
      <div w3-include-html="templates/footer.html"></div>
    </div>
</body>
<script type="text/javascript">
    w3IncludeHTML();
</script>
</html> 
    
    $.get("file.html", function(data){
    $("#div").html(data);
});
 
    
    You can say that it is with PHP, but actually it has just one PHP command, all other files are just *.html.
AddType application/x-httpd-php .html<?php include("meniu.html"); ?>.That's all!
Remark: all commands like <? ...> will be treated as php executables, so if your html have question marks, then you could have some problems.
 
    
     
    
    In 2022
In HTML without iframe
<div id="display" style="width: 100%;float: left;"></div>
<script>
  function load_anotherpage() {
    document.getElementById("display").innerHTML =
      '<embed type="text/html" src="https://libcon.in/" width="100%" height="800" >';
  }
  load_anotherpage();
</script>
want more then use this link
 
    
    Also make sure to check out how to use Angular includes (using AngularJS). It's pretty straight forward…
<body ng-app="">
  <div ng-include="'myFile.htm'"></div>
</body> 
 
    
    If you are using NGINX over linux and want a pure bash/html, you can add a mask on your template and pipe the requests to use the sed command to do a replace by using a regullar expression.
Anyway I would rather have a bash script that takes from a templates folder and generate the final HTML.
 
    
    confirmed roadkill, create a .htaccess file in the web root with a single line which allows you to add php code to a .html file.
AddType application/x-httpd-php .html
 
    
    Best solution from nginx: http://sysoev.ru/nginx/docs/http/ngx_http_ssi_module.html
