js+css 实现遮罩居中弹出层

 本文为大家详细介绍下使用js实现遮罩弹出层居中,且随浏览器窗口滚动条滚动,示例代码如下,感兴趣的朋友可以参考下

js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动) 
 代码如下:
<!doctype html> 
<head> 
<meta charset="utf-8" /> 
<title></title> 
<style type="text/css"> 
*{}{margin:0;padding:0;} 
html{}{_background:url(about:blank);} /**//* 阻止闪动 in IE6 , 把空文件换成about:blank , 减少请求 */ 
body{}{background:#fff; font: 12px/1.5 Tahoma,Geneva, 5b8b4f53, sans-serif; height:100%;} 
.wrap{}{height:980px; padding-top:20px;text-align:center;} 
p{}{font-size:14px;text-align:center;line-height:24px;} 
/**//** 遮罩层 **/ 
#masklayer{}{ 
background:#000; 
display:none; 
filter:alpha(opacity = 50); 
opacity:0.5; 
top:0; 
left:0; 
height:100%; 
width:100%; 
z-index:999; 
position:fixed; 
_position:absolute; 
_left: expression(documentElement.scrollLeft + documentElement.clientWidth - this.offsetWidth); 
_top: expression(documentElement.scrollTop + documentElement.clientHeight - this.offsetHeight); 

/**//** 弹出层 **/ 
#popup{}{ 
display:none; 
width:300px; 
z-index:1000; 
left:50%; 
top:50%; 
position:fixed!important; 
margin-left:-150px !important; 
_position:absolute; 
_top:expression(eval(document.compatMode && document.compatMode=='CSS1Compat')? 
documentElement.scrollTop + (document.documentElement.clientHeight - this.offsetHeight)/2: /**//*IE6*/ 
document.body.scrollTop + (document.body.clientHeight - this.clientHeight)/2); /**//*IE5 IE5.5*/ 

.content{}{background:#f3f3f3;border:1px solid #999;} 
.content h3{}{background:#a0a0a0;color:#fff;font-size:14px;height:32px;line-height:32px; padding-left:5px;} 
#clickbtn{}{margin-top:20px;} 
</style> 
</head> 
<body> 
<div class="wrap"> 
<p> 
我是正文我是正文我是正文我是正文我是正文我是正文我是正文 
<br /> 
我是正文我是正文我是正文我是正文我是正文我是正文我是正文 
<br /> 
我是正文我是正文我是正文我是正文我是正文我是正文我是正文 
<br /> 
我是正文我是正文我是正文我是正文我是正文我是正文我是正文 
<br /> 
我是正文我是正文我是正文我是正文我是正文我是正文我是正文 
</p> 
<input type="button" id="clickbtn" value="clike me" /> 
</div> 
<div id="masklayer"></div> 
<div id="popup"> 
<div class="content"> 
<h3>我是弹出层 有没有居中?</h3> 
<p>居中居中居中居中居中居中</p> 
<p>居中居中居中居中居中</p> 
<p>居中居中居中居中</p> 
<p>居中居中居中</p> 
</div> 
</div> 
<script type="text/javascript"> 
(function(masklayer){ 
var clickbtn = document.getElementById('clickbtn'); 
clickbtn.onclick = function(){ 
var popup = document.getElementById('popup'); 
masklayer.style.display='block'; 
popup.style.display ='block'; 
var h = popup.clientHeight; 
with(popup.style){ 
marginTop = -h/2+'px'; 


})(document.getElementById('masklayer')) 
</script> 
</body> 
 
</html> 
 
 

时间: 2024-11-25 12:46:03

js+css 实现遮罩居中弹出层的相关文章

js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动)_javascript技巧

js+css 实现遮罩居中弹出层(随浏览器窗口滚动条滚动) 复制代码 代码如下: <!doctype html> <head> <meta charset="utf-8" /> <title></title> <style type="text/css"> *{}{margin:0;padding:0;} html{}{_background:url(about:blank);} /**//*

jquery实现居中弹出层代码_jquery

复制代码 代码如下: /* 弹出窗口定位到浏览器中间 1. show(options{ height:高度 width:宽度 speed:渐显时间 默认0 container:包含的html内容的jquery对象 model:是否是模态窗口,默认true,模态对话框就是在弹层下面在覆盖遮罩层,参考上篇文章Overlay实现 }) 2. close(speed:淡出时间 默认0) */ Q.Panel = function() { var self = this; self._resetPosit

JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)_javascript技巧

本文实例讲述了JS+CSS实现鼠标经过弹出一个DIV框效果.分享给大家供大家参考,具体如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml">

jquery-ui中弹出层(dialog)使用方法

在运维开发的过程中,避免频繁的刷新页面和人性化的提交操作,有时候我们需要弹出页面和人进行交互.那么jquery-ui 的dialog 足够满足我们的需求. 首先还是贴一下官网的地址:http://jqueryui.com/dialog/下载和官方文档都有,很成熟的东西. 弹出层的hello world. 在操作之前,首先创建一个页面. 然后引入相关的js和css文件. <script src="/static/js/jquery-1.11.1.min.js"></sc

ie6 下select遮罩住弹出层解决办法

使用JS做DIV弹出层时,一般地在IE下是无法遮罩ActiveX控件的,同时在IE6下Select也遮罩不住.在IE中ActiveX默认永远显示在最顶层,因此通过设置Style的Z-Index属性也无法改变遮罩关系的.在信息系统软件中,许多场合由于性能.操作等原因,往往会使用ActiveX代替Html来完成功能  代码如下 复制代码 var sd = XX.style.display; XX.style.display = "none";  ... //关闭弹出层后显示 XX.styl

asp.net中怎么实现在listview的项中弹出层

问题描述 想实现一个鼠标悬浮在text="备注信息"的label上,就会弹出上面的那个层,鼠标移出label之后,这个层就隐藏. 解决方案 解决方案二:各位大神,在线等!解决方案三:把要显示的层放到listview外面,在label中添加onmosuemove事件,在这个事件中用JS控制层的显示和隐藏.解决方案四:引用2楼andywangguanxi的回复: 把要显示的层放到listview外面,在label中添加onmosuemove事件,在这个事件中用JS控制层的显示和隐藏. @E

Js实现点击超链接弹出层,效果仿Discuz登录!

主要应用到的是dispaly:none 和 dispaly:block;来控制实现的:  <a id="link" href="#" onclick="linkonclick()">登录</a>这里还有一种写法  <a href="javascript:linkonclick()">登录</a>  两种效果是一样的:   View Code <!DOCTYPE html P

js css 实现遮罩层覆盖其他页面元素附图_javascript技巧

<div style=" position: fixed; width: 100%; height: 100%; left: 0px; top: 0px; background-color: Black; z-index: 9999; filter: alpha(opacity=70); Opacity:0.7;"></div> z-index 必须大于遮罩元素 demo <!doctype html> <html> <head&g

JS+CSS打造可拖动的聊天窗口层

css|js|可拖动 一个可以拖动的聊天窗口层,兼容IE和FF: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> <