繁体   English   中英

HTML框架集:框架集在新选项卡/窗口中打开

[英]HTML Frameset: Frameset Open in new tab/window

自上周以来,我一直在思考如何使用框架解决问题。

场景:

我有一个HTML文件,用于页眉,页脚,菜单和具有自己背景颜色的内容。 我使用框架进行更好的设计。

页眉的背景颜色为黑色, 页脚也为黑色, 菜单为灰色, 内容仅为纯白色。

一切正常,但我在菜单中看到一个问题,当用户使用“ 新建选项卡”中的“ 打开链接”或“ 新窗口”中的“ 打开链接”单击主页时,主页的设计仅为白色。

题:

有没有一种方法,当用户使用“ 新建选项卡”中的“ 打开链接”或“ 新窗口中的“ 打开链接”单击链接时,四个html文件的背景色也将包括在内?

这是我的框架集代码:

<frameset rows="120,*,30" border ="0">
<frame name ="top" src="header.php">

</frame>

<frameset cols="200,*" border ="0">
<frame src="menu_viewer.php" name="menu">
<frame src="index.php" name="main" scrolling="yes">
</frame>
</frameset>

<frame name="bottom" src="footer.php">

</frameset>

这是我设计的屏幕:

在此处输入图片说明

当用户单击“ 新建选项卡中的 打开链接”或“ 新窗口中 打开链接”时 ,结果为

在此处输入图片说明

正确的结果应该是:

在此处输入图片说明

只要设计的结果是那样,任何建议或推荐程序都将受到欢迎。 提前谢谢你。

@托莱多公主(Princess Toledo):HTML5现在不支持框架集。 如果您在css中执行此操作,则对您的代码使用包装器,即

<body>
<div id=wrapper>
<!-- your code -->
</div>
</body>

并给包装的CSS作为

#wrapper {
  width:980px;
  margin: auto;
 }

这样可以使您的内容适合wrapper内部以及页面的中心,并且不会在高分辨率窗口中折叠。

如果您的框架集文件名为frameset.php,则可以通过以下方式对其进行修改

 <frameset rows="120,*,30" border ="0"> <frame name ="top" src="header.php"> </frame> <frameset cols="200,*" border ="0"> <frame src="menu_viewer.php" name="menu"> <?php if (isset($_GET['main'])): ?> <frame src="<?php echo $_GET['main']; ?>" name="main" scrolling="yes"> <?php else: ?> <frame src="index.php" name="main" scrolling="yes"> <?php endif; ?> </frame> </frameset> <frame name="bottom" src="footer.php"> </frameset> 

然后在您的每个页面文件中,插入一点顶部框架检查。 例如,在文件index.php中,插入以下代码:

 <script> if(self==top){ self.location = "frameset.php?main=index.php"; } </script> 

并在文件playlist.php中插入以下代码:

 <script> if(self==top){ self.location = 'frameset.php?main=playlist.php'; } </script> 

依此类推,然后浏览其余的页面文件。

希望您能明白。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM