div背景半透明,覆盖整个可视区域的遮罩层效果

要实现div背景半透明,覆盖整个可视区域的遮罩层效果,可以按照以下步骤进行:

第一步:创建遮罩层div

创建一个遮罩层的div,它的样式可以设置如下:

.selector {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 9999;
}

以上代码中:

  • position: fixed; 表示该div拥有固定位置,不会随着页面滚动而改变位置。
  • top: 0; left: 0; width: 100%; height: 100%; 表示该div位置为页面左上角,宽度和高度都为100%,覆盖整个可视区域。
  • background: rgba(0, 0, 0, 0.5); 表示遮罩层的背景为黑色,透明度为0.5,实现背景半透明的效果。
  • z-index: 9999; 表示该div的z轴值比其他元素都高,处于最上层。

第二步:将遮罩层div添加到body中

使用JavaScript或jQuery将遮罩层div添加到body中,代码示例:

var body = document.getElementsByTagName('body')[0];
var maskDiv = document.createElement('div');
maskDiv.setAttribute('class', 'selector');
body.appendChild(maskDiv);

或者使用jQuery的写法:

$('body').append('<div class="selector"></div>');

示例1:点击按钮出现遮罩层

<!DOCTYPE html>
<html>
  <head>
    <style type="text/css">
      .selector {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 9999;
      }
    </style>
    <script type="text/javascript">
      function showMask() {
        $('body').append('<div class="selector"></div>');
      }
      function hideMask() {
        $('.selector').remove();
      }
    </script>
  </head>
  <body>
    <button onclick="showMask()">点击显示遮罩层</button>
    <button onclick="hideMask()">点击隐藏遮罩层</button>
  </body>
</html>

以上代码中,点击“点击显示遮罩层”按钮,就会添加遮罩层div到body中,点击“点击隐藏遮罩层”按钮,就会将遮罩层div删除。

示例2:页面加载时自动出现遮罩层

<!DOCTYPE html>
<html>
  <head>
    <style type="text/css">
      .selector {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.5);
        z-index: 9999;
      }
    </style>
    <script type="text/javascript">
      $(document).ready(function() {
        $('body').append('<div class="selector"></div>');
      });
    </script>
  </head>
  <body>
    <h1>这是一个示例页面</h1>
    <p>页面内容</p>
  </body>
</html>

以上代码中,使用jQuery的$(document).ready()方法,在页面加载完成后自动将遮罩层div添加到body中。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:div背景半透明,覆盖整个可视区域的遮罩层效果 - Python技术站

(0)
上一篇 2023年6月9日
下一篇 2023年6月9日

相关文章

  • CSS样式去除input和textarea点击选中框

    要去除input和textarea在点击时出现的选中框,可以通过CSS样式来实现。以下是实现的方法: 方法一:使用outline 可以使用CSS属性outline:none来清除input和textarea在点击时出现的选中框。 例如,我们可以设置一个class为text-input,然后用CSS样式去掉选中框: .text-input:focus { ou…

    css 2023年6月10日
    00
  • 纯CSS绘制三角形(各种角度)

    当我们需要在网页上绘制一个三角形时,最常见的做法可能是通过使用背景图片或者使用canvas实现。但实际上,我们也可以通过CSS代码轻松地绘制出三角形,最大的好处是避免了使用图片带来的额外的HTTP请求和页面大小增加,同时也更加灵活和可控。下面将详细介绍如何用CSS绘制三角形。 方法一:使用边框 CSS中,通过设置一个元素的边框,我们可以使得这个元素的边缘具有…

    css 2023年6月10日
    00
  • CSS实现等分布局的4种方式

    当我们在网页中进行布局时,往往需要将一行中的空间等分成若干份。为了实现这样的布局效果,我们可以使用CSS提供的多种方式,在本文中,我们将详细介绍”CSS实现等分布局的4种方式”,同时提供两个具体的实现示例以帮助大家更好的理解。 1. 使用flexbox布局 第一种方式是使用flexbox布局。flexbox布局是CSS3提供的一种强大的布局方式,它允许我们将…

    css 2023年6月9日
    00
  • 关于vue.js过渡css类名的理解(推荐)

    关于vue.js过渡css类名的理解(推荐)这个主题,我可以给您提供以下完整攻略。 1.背景概述 Vue.js是一个渐进式JavaScript框架,它提供了过渡功能,使得我们可以在组件的状态或者父组件和子组件之间的切换时,清晰地呈现过渡动画的过程。这个过程中,Vue.js提供了丰富的css类名控制,帮助我们实现更加复杂和细致的动画效果。 2.过渡类名 Vue…

    css 2023年6月10日
    00
  • 关于vue.js弹窗组件的知识点总结

    下面是关于vue.js弹窗组件的知识点总结,主要包括组件创建、使用、传值等方面的内容。 1. 组件创建 1.1 创建基础组件 在Vue.js中,我们可以通过Vue.component方法来创建组件,如下所示: Vue.component(‘my-dialog’, { template: ` <div class="my-dialog&quot…

    css 2023年6月10日
    00
  • JS实现DIV高度自适应窗口示例

    下面我将为你详细讲解“JS实现DIV高度自适应窗口示例”的完整攻略。 步骤一:设置DIV的CSS样式 首先,我们需要设置DIV的CSS样式,让它具备自适应窗口高度的能力,代码如下: div{ height: auto; /*设置DIV高度自适应窗口*/ min-height: 100%; /*设置DIV最小高度为100%*/ } 步骤二:使用JS动态计算DI…

    css 2023年6月10日
    00
  • 6款经典实用的jQuery小插件及源码(对话框/提示工具等等)

    6款经典实用的jQuery小插件及源码攻略 简介 本文将介绍6款经典实用的jQuery小插件及其源码,包括对话框、提示工具、选项卡、滚动条、下拉菜单、进度条等组件。这些小插件都能够在网站中提供便利的交互效果,增强用户体验。 1.对话框插件:Dialog Dialog是一个轻量级的对话框插件,可以用于页面中弹出模态对话框。它包含了丰富的配置选项,可以实现自定义…

    css 2023年6月9日
    00
  • jQuery实现浮动层随浏览器滚动条滚动的方法

    下面是详细的“jQuery实现浮动层随浏览器滚动条滚动的方法”的攻略。 1. 使用jQuery实现浮动层随浏览器滚动条滚动的方法 1.1 使用jQuery固定位置方法 使用jQuery的固定位置方法,实现浮动层的位置与浏览器滚动条的位置同步。 代码示例: $(window).scroll(function() { var scrollTop = $(this…

    css 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部