iframe 内显示的网页 只显示改网页的某一部分!

时间:2022-03-28 19:59:20

使用iframe调用指定网页的特定位置(显示目标网页某区域的我想要的内容)

有些时候我们并不需要显示iframe标签属性src指定的目标网页的所有内容,往往只需要显示某一特定区域。现有两种实现方法提供,但严禁使用此方法用于欺骗、隐瞒目的。

这里用到了Iframe的一些属性,稍微介绍下:
       1. marginheight 属性规定框架内容与框架的上方和下方之间的高度,以像素计。
       2. maiginweidth 属性规定框架内容与框架的左侧和右侧之间的高度,以像素计。
       3. vspace y方向显示的区域,负值为从目标网页最上面开始截取的部分,正值为y值+从上部开始内容区域
       4. hsapce x方向显示的区域,负值为从目标网页左侧开始截图的部分,正值为x值+从左侧开始内如区域
       5. src 目标网页的地址,可以为html,asp,文本等内如
       6. frameborder 框架边框,0为无边框(画中画效果)
       7. scrolling 是否显示滚动,yes显示
       8. align:指定浮动窗口内的页面相对于浮动窗口的位置,它的值有left、right、top、middle、bottom
       9. marginwidth、marginheight 目标网页被框架覆盖的深度

方法一,以百度主页http://www.baidu.com为例,去掉百度的Logo部分,代码与效果如下:

< html>
< head>
    <title>Iframe标签显示目标网页的指定区域,方法1</title>
< /head>
< body>
< div align="center">
< iframe width="800" height="600" src="http://www.baidu.com" scrolling="no" hspace="-100" vspace="-150"></iframe> 
< /div></body>
< /html>

方法二,使用DIV控制,这也是使用iframe框架的好处,因为它不像frame,它可以显示的网页的任意区域代码如下:
< html>
< head>
    <title>Iframe标签显示目标网页的指定区域,方法1</title>
< /head>
< body>
< div align="center" style="margin:0 auto;">

<div style="width:800px;height:600px;overflow:hidden;border:0px"> 
         <div style="width:500px;height:800px;margin:-153px 0px 0px -10px;">
              <iFrame src="http://www.baidu.com" width="800" height="600" scrolling="no">
             </iFrame>
         </div> 
     </div> 
< /div> 
< /body>

</html>

方法三、

目前尚未找到按坐标来控制的办法,只有采用按顶、左、右边跑的方法来控制,因此要制作一个文件来完全调用目标网页内容,然后再在需要调用指定内容的地方使用iframe代码调用。
    首先建立一个完全调用目标网页的文件,命名为files.html,代码如下:

<html>
< head>
< meta http-equiv=”Content-Type” content=”text/html; charset=gb2312″>
 <title>AUDCNY</title>
< /head>
< body> <iframe src=”目标网址” width=”980″ height=”700″ frameborder=”0″ scrolling=”no” style=”position: absolute; top: -120px; left: -680px;”></iframe>
< /body>
< /html>
    这个页面用iframe框架引用了目标页面,并且用CSS定位设定了框架浮动位置(top: -120px; left: -680px)。当然也可以按右边距控制,如right:680px,距离大小可以根据情况调整,直到调整到合适的位置。

然后在需要调用目标内容的文件中合适的位置放入以下代码:

<iframe src=”这里填写上面保存的html文档的地址” width=”300″ height=”230″ frameborder=”0″ scrolling=”no”></iframe>
    高宽可以根据情况调整,为了使调用的内容正常、正确显示的我们设定的位置,大家可以修改files.html里的边距控制量以达到最佳效果。

遇到问题:JSP中iframe表中加上 vspace=-190 hspace=0 这两个属性报Undefined attribute name (vspace)错误.而且这两个标签也不管用

首先提供一个需要现在位置大小的一个div 然后 在这个div 中引入要加载的页面并指定具体要查看内容的位置,下面提供了一个示例便你参考,如不理解可以追问我。
<div class="groupnews_insideL" style="width:800px;margin-left:10px; overflow:hidden;position:relative;">
<iframe id="jin10" width="125%" height="5000" frameborder="0" style="position:relative; top:-175px; float:left; left:-193px;" scrolling="no" src="http://www.kuaixun360.com/data/2.html" name="jin10">
<!DOCTYPE html>
<html>
</iframe>
</div>