169it科技资讯
169it -->


当前位置:  编程技术>WEB前端

页面遮罩层,并且阻止页面body滚动。bootstrap模态框原理

    来源: 互联网  发布时间:2014-10-07

实现思路:

1、需要有一个层将body遮住,放在body上方。

2、修改body的overflow属性值为:hidden

废话不多说了,将关键代码贴出来了,兼容火狐,谷歌,ie

遮罩层的样式代码,红色部分是关键的部分

代码如下:

.cover {
position:fixed; top: 0px; right:0px; bottom:0px;filter: alpha(opacity=60); background-color: #777;
z-index: 1002; left: 0px; display:none;
opacity:0.5; -moz-opacity:0.5;
}

网页部分的代码

代码如下:

<body>

  <div >
    <div ></div>
    <a href="javascript:;" onclick="showMask()" >点我显示遮罩层</a><br />
  </div>
  <div id="cover" ></div>
</body>

js部分的代码

代码如下:

function showMask(){
$('body').css("overflow","hidden")
$("#cover").show();
}

    
相关技术文章:
    ▪CSS可以做的几个令你叹为观止的实例分享

     在我写“你未必知道的JavaScript和CSS交互的5种方法”一文时,人们对于JavaScript和CSS是如何重叠的感到惊讶。今天,我将重点强调你能用CSS完成的7种工作——不需要通过JavaScript或图片。   CSS@supports   在使用一些浏览器可能没有的特性时,每一个优秀的前端开发者都需要进行特性测试。特性测试一直以来都是由JavaScript来做的,许多人使用Modernizr,一个由许多测试良好的案例构成的优秀实用工具,来做特性测试。一个新API:@supports,不管怎样,已经出现在开发人员面前,它能让你用CSS来做特性测试。以下是一些@supports如何工作......


    ▪详细分析css float 属性以及position:absolute 的区别

     1.float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。div一个典型的块级元素,会单独占据一行。 先看看最基本的块级元素如何排列的。html代码,以下样式都是基于此。 代码如下:<div class="boxBg">        <div class="box1">        框框1        </div>        <div class="box2">        框框2        </div>     ......


    ▪IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值的完美解决方案

     IE6/IE7/IE8/IE9中tbody的innerHTML不能赋值,重现代码如下 代码如下:<!DOCTYPE html><html>    <head>        <meta charset="utf-8"/>        <title>IE6-IE9中tbody的innerHTML不能复制bug</title>    </head>    <body style="height:3000px">        <table>            <tbody>                <tr><td>aaa</td></tr>            </tbody>        </table>        <p>            <button id="btn1">GE......


 
最新技术文章:
    ▪css white-space:nowrap属性用法(可以强制文字不换行输出)

     强制不换行,直接使用white-space:nowrap即可。CSS设置不转行: overflow:hidden 隐藏 white-space:normal 默认 pre 换行和其他空白字符都将受到保护 nowrap 强制在同一行内显示所有文本,直到文本结束或者遭遇 br 对象例:强制不换行 代码如下: div{white-space:nowrap;} ......


    ▪IE里button设置border:none属性无效解决方法

     某个元素设置无边框,只需要给元素设置border:none即可,当然设置border:0效果一样,但实际上两者是有性能差别的 代码如下:border:none:边框设置为为none,不做任何处理;border:0:边框宽度设置为0像素,但是实际上border-color和border-style还是在渲染的。然而在IE中,对于button和input元素确并不是这样,在IE6,7中border:none仅等价于border-style:none,而边框所占的空间还是在的。这导致了调input的宽度和高度在各个浏览器中不统一!在IE6,7中,虽然设置了border:none后,边框仍存在。不信你试一试。下面给......


    ▪border:none与border:0使用区别

     一、border:noneborder-style的简写在chrome审查元素看到以下结果 代码如下:element.style {border: none;border-top-style: none;border-right-style: none;border-bottom-style: none;border-left-style: none;border-width: initial;border-color: initial;}在firefox中用firebug查看元素会看到以下结果: 代码如下:element.style {    border: medium none;}注意这个medium值二、border:0border-width的简写在chrome审查元素看到以下结果......


 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2017,169IT.COM,E-mail:www_169it_com#163.com(请将#改为@)

浙ICP备11055608号