实现不同分辨率、不同浏览器下高度自适应、iframe高度自适应
html:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script type="text/javascript" src="js/jQuery.js"></script>
<script type="text/javascript" src="js/js.js"></script>
<style type="text/css">
/*
* 设置高度自适应,让在普通分辨率下和大屏分辨下,都能铺满屏。
1.设置最外层html的 font-size: 12px;
*/
html,body{font-family: "微软雅黑";font-size: 12px;width: 99%;height: 100%; min-width: 1340px; background-color: #04101E;margin: 0 auto;}
/*
2.高度用rem单位。
最外层html的 font-size: 12px;如果div的height是24px,那用24/12=2rem;相当于1rem=12px;
*/
.div1,.div2,.div3{
width: 100%;
height: 18.33rem; }
.div1{background-color:#ff1aaf ;}
.div2{background-color:#AA86E6 ;}
.div3{background-color:#189189 ;}
</style>
</head>
<body>
<div class="div1">撑起div的高度</div>
<div class="div2">撑起div的高度</div>
<div class="div3">撑起div的高度</div>
</body>
</html>
js:
// 放到头部(初始化位置
$(document).ready(function(){
setHeight();
$(window).resize(function(){
setHeight();
});
}) function setHeight(){
//alert("12");
var sWidth=document.documentElement.clientWidth;
var sHeight=document.documentElement.clientHeight;
if(sWidth>1366){
$("html").css("font-size",sWidth/1366*12+"px");
return;
}
if(sHeight>768){
$("html").css("font-size",sHeight/768*12+"px");
}
};
一、若使用iframe嵌入页面(跨域),自适应高度。
问题:初始化调用iframeHeight();同域有效。但对于iframe(class="iframeClass")里嵌入的页面还是无法自适应高度,不在同浏览器或分辨率下,下方出现白色空白。
解决方法:
①.主页面A.html。嵌入页面B.html
②.对A.html里任意一菜单class,统一绑定iframeHeight();。内容区iframe嵌入的页面能够自适应页面高度,空白处消失。内容超出自动出滚动条。
③.隐藏A.html里最外层滚动条。只显示iframe下的滚动条。
④.单位:宽100%,高rem。
$(document).ready(function(){
$(window).resize(function(){
iframeHeight();
});
iframeHeight();
}); function iframeHeight(){
var sHeight=document.documentElement.clientHeight;
$(".iframeClass").css("height",(sHeight/12-11.09)+"rem");
};
// 获得总可视区域的高度/12-head块占了11.09rem的高
如:
$(document).ready(function(){
$(document).on("click","#menus a",function(){
iframeHeight();
}); $(window).resize(function(){
iframeHeight();
});
iframeHeight();
});
二、设置点击某一处,head块隐藏。
var sHeight=document.documentElement.clientHeight;
$(".iframeClass").css("height",(sHeight-26)/12+"rem");
// 获得总可视区域的高度-标签页块占了26px的高后,除以12
如:
$("控制head隐藏按钮").click(function(){
if($("head块").is(":visible")){
$("head块").hide();
$(this).attr("title","显示head块");
var sHeight=document.documentElement.clientHeight;
$(".iframeClass").css("height",(sHeight-26)/12+"rem"); }else{
$("head块").show();
$(this).attr("title","隐藏head块");
// $(".iframeClass").css("height","41rem");
iframeHeight();
}
});
实现不同分辨率、不同浏览器下高度自适应、iframe高度自适应的更多相关文章
- 判断图片加载完成,自适应iframe高度
在做RSS订阅的时候遇到这样一个问题:点击文章标题时,弹出文章的详细界面.本来打算直接用弹出div层来显示文章的内容,但是设置div的overflow:scroll滚动条不好看,还有就是在androi ...
- js获取iframe和父级之间元素,方法、属,获取iframe的高度自适应iframe高度
摘自:http://blog.csdn.net/kongjiea/article/details/38870399 1.在父页面 获取iframe子页面的元素 (在同域的情况下 且在http://下测 ...
- 8.14 右键自定义菜单 更加iframe 内容高度调整 iframe高度 js定时
<div class="main_contain" id="z_div" style="position: relative;"> ...
- 跨域iframe高度自适应(兼容IE/FF/OP/Chrome)
采用JavaScript来控制iframe元素的高度是iframe高度自适应的关键,同时由于JavaScript对不同域名下权限的控制,引发出同域.跨域两种情况. 由于客户端js使用浏览器的同源安全策 ...
- 跨域iframe高度自适应(兼容IE/FF/OP/Chrome)
采用JavaScript来控制iframe元素的高度是iframe高度自适应的关键,同时由于JavaScript对不同域名下权限的控制,引发出同域.跨域两种情况. 由于客户端js使用浏览器的同源安全策 ...
- (转)iFrame高度自适应
第一种方法:代码简单,兼容性还可以,大家可以先测试下: function SetWinHeight(obj) { var win=obj; if (document.getElementById) { ...
- Iframe高度自适应(兼容IEFirefox、同域跨域)
在实际的项目进行中,很多地方可能由于历史原因不得不去使用iframe,包括目前正火热的应用开发也是如此. 随之而来的就是在实际使用iframe中,会遇到iframe高度的问题,由于被嵌套的页面长度不固 ...
- Iframe高度自适应(兼容IE/Firefox、同域/跨域)
在实际的项目进行中,很多地方可能由于历史原因不得不去使用iframe,包括目前正火热的应用开发也是如此. 随之而来的就是在实际使用iframe中,会遇到iframe高度的问题,由于被嵌套的页面长度不固 ...
- jQuery解决iframe高度自适应代码
网上查了好多用着都不行,自己搞定了:在包含iframe的页面中加入以下脚本,基本思想是在iframe加载内容后重新设置高度,下面代码尽在IE6中用过,没在其他浏览器中测试. 代码如下: <scr ...
- JS 中根据iframe子页面自动iframe高度
注意:为使页面有更好的兼容性,在使用以下代码前,请将aspx页中头部的<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional ...
随机推荐
- PHP chmod() 函数
chmod() 函数改变文件模式. 如果成功则返回 TRUE,否则返回 FALSE. 例子 <?php // 所有者可读写,其他人没有任何权限 chmod(); // 所有者可读写,其他人可读 ...
- windows命令行操作
一.打开方式 - 开始菜单 --> 运行 --> 输入cmd --> 回车 二.常用的指令 dir - 列出当前目录 ...
- SpringBoot访问不了JSP但却能进入后台
博主在使用sring-boot跳转HTML页面后,由于好奇心就想跳转到JSP页面,就在网上搜相关信息,结果不是跳转500错误就是下载JSP文件.各种坑啊,在博主跳了N多坑后,终于跳转JSP页面成功.故 ...
- ThinkPHP5使用phpspreadsheet导入导出Excel
引用类: use PhpOffice\PhpSpreadsheet\IOFactory; use PhpOffice\PhpSpreadsheet\Cell\Coordinate; use Php ...
- 【maven】如何将一个已有的jar文件,生成maven坐标,并上传至远程仓库
[一]如何将一个已有的jar文件,生成maven坐标 使用maven构建项目需要在项目中引入自定义的一些包,也像maven一样在工程的pom.xml中引入相应的坐标,这时候我们就要自己把包上传到本地仓 ...
- Javascript之hoisting变量提升
javascript不仅仅是一门弱类型语言,还是一门解释型语言.一门编程语言的本质就是这样,优点即是缺点,缺点也往往是优点.JS因为有了变量提升,能够使我们在编程时可以忽略“先声明,再使用”的规则,但 ...
- Tosca 添加插件或者是扩展功能,把页面上某块内容识别成table
#遇到了问题 "ICS table was not found" 是因为编辑case的时候用到了插件的功能, 但是setting里面却没有配置这个插件 #在哪里添加插件 #目的 这 ...
- Zabbix 3.2.6-Mysql多实例监控-Percona Monitoring Plugins自动发现
mysql多实例监控实录 系统环境: cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) 内核版本: uname -r 3.1 ...
- bladex调用网关使用oauth2统一获取授权
一:启动网关服务(需要启动其它服务,如:AuthApplication .UserApplication.BladeLogApplication,及自己添加的代码服务) 二:http://localh ...
- 使用mysqlslap测试MySQL性能
之前介绍过MySQL的性能测试工具sysbench, 这次介绍一个mysql自带的比较简单的性能测试命令mysqlslap. 下面的指令模拟了1000个进程同事连接mysql,并执行100个查询操作, ...