Okay, I agree with everyone else that this is just not a good thing to do and there is a reason no one has worked on it before.
That said, I was able to get it working alright with reasonably little effort. Screenshotting would be the best answer (and I still doubt that should be done, but hey you might have a special reason).
So the basic thing to do is set an iframe in your HTML, a div to stop it being active and another div on top of that to house your content. All absolutely positioned.
Your HTML would look like:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"lang="en" ><head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link type="text/css" rel="stylesheet" href="screen.css" media="screen,projection" />
<title>Template</title>
</head><body>
<div class="content">
<p>Content goes here</p>
</div>
<div id="background"></div>
<iframe src="http://bing.com" />
</body></html>
And your CSS:
*{margin:0;padding:0}
#background{
position:absolute;
background-color:#fff;
color:#fff;
opacity:0;
filter:alpha(opacity=0);
width:100%;
height:70em;
z-index:10;
}
.content{
position:absolute;
width:100%;
height:70em;
z-index:20;
color:#fff;
}
iframe{
position:absolute;
border:none;
z-index:0;
width:100%;
height:70em;
overflow:hidden;
}
When putting your content in <div class="content">
becomes the new <body>
. Pretty much put everything in that and style it as you normally would. I got a decent relatively-positioned, floating box based layout working with no issue.