html5能用frameset吗?不能用用什么代替?

html5能用frameset吗?不能用用什么代替?,第1张

html5不支持frameset的,所以解决方法有以下两种:

1、 使用iframe,但是目前使用iframe的人已经越来越少了,而且iframe在不同浏览器之间还有不兼容的情况。

2、使用jQuery的onload方法加载页面,不过这种方法跳转多个页面后,点击浏览器上方的后退前进是无效的,不过可以认为的添加一个返回按钮。所以更流行的是这种方法:

举例说明:

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title>div+css实现frameset效果</title>

<style type="text/css">

.header{border-bottom:1px solid #cccmargin-bottom:5px}

.MainContainer{min-width:960pxmax-width:1600px}

.sidebar{width:180pxfloat:leftmargin-right:-180pxborder-right:1px solid #cccmin-height:500pxpadding:5px}

.main{float:leftmargin-left:200pxpadding:5px}

.content{padding:0 10px}

</style>

</head>

<body>

    <div class="page">

        <div class="header">

            <div id="title">

                <h1>顶部</h1>

            </div>

        </div>

        <div class="MainContainer">

            <div class="sidebar">

            边栏

            </div>

            <div  id="main" class="main">

                内容

            </div>           

        </div>

    </div>

</body>

</html>

4、运行效果如下:

可以用jQuery获取到当前的窗口的宽度,来计算iframe的宽和高,示例代码如下:

<iframe src="http://www.baidu.com" frameborder="0" id="demo"></iframe>

<script src="http://libs.baidu.com/jquery/1.9.0/jquery.min.js" type="text/javascript"></script>

<script>

$(document).ready(function() {

  var ifr_width=$(window).width()*0.75

  $("#demo").css('width',ifr_width)

  $("#demo").css('height',ifr_width*0.75)

})

</script>

jQuery中获取当前窗口的宽度代码是:$(window).width()

iframe的HTML5自适应手机

首先你要明白css的height的使用规则,当设定 height:100% 相对高度的时候,height 具有继承性,元素的具体高度相对于它的父元素,也就是它的父元素必须有具体的height属性值,不然本元素设置的height百分比无效,等于没有设置高度。

如果元素的父元素的height属性值也是相对高度,比如是百分百,那么,父元素的父元素也必须有height设定,这种关系一直到最顶层的父元素。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6119599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存