纯html5和css3做一个模态框

先看效果

html5代码部分

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <meta name="author" content="张磊, whouu@qq.com, http://www.lovchun.com">
    <title>ModalBox-Tutorial</title>
    <link rel="stylesheet" href="modalbox.css">
</head>
<body>
    <!-- 1. 模态框的显示按钮,通常用于显示指定的模态框 -->
    <a href="#my-modal-box">显示模态框</a>
    <!-- 2. 模态框容器的根节点,它通常会显示为一个透明的遮罩覆盖全屏 -->
    <div id="my-modal-box" class="modalbox">
        <!-- 3. 模态框内容的跟节点,它通常是一个非透明的容器,用于展示具体内容 -->
        <div class="modalbox-dialog">
            <!-- 4. 模态框的关闭按钮,通常用于关闭模态框 -->
            <a href="#close" title="关闭" class="modalbox-close-btn">X</a>
            <!-- 5. 你的自定义内容,纯文字、表单、提示信息等 -->
            <h2>ModalBox Tutorial</h2>
            <p>这是一个使用 HTML5 和 CSS3 构建的模态框</p>
            <p>你可以将它加入到 Web APP 中的许多交互中,如:登录/注册、操作反馈、提示信息等。</p>
        </div>
    </div>
</body>
</html>

css部分“modalbox.css”

/* 模态框初始状态 */
.modalbox {
    font-family: Arial, Helvetica, sans-serif;
    /* 通过 position 让遮罩层撑满整个屏幕 */
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* 遮罩层背景色为黑色 */
    background: #000;
    /* 给 z-index 一个过大的值,确保遮罩层”真的遮盖住了“模态框背后的元素 */
   z-index: 99999;
    /* 设置 opacity 为 0,用于隐藏模态框 */
    opacity: 0;
    /* 一些过渡效果 */
    -webkit-transition: opacity 400ms ease-in;
    -moz-transition: opacity 400ms ease-in;
    transition: opacity 400ms ease-in;
    /* pointer-events 鼠标事件“穿透”该元素并且指定该元素“下面”的任何东西 */
   /* 请参阅:https://developer.mozilla.org/zh-CN/docs/Web/CSS/pointer-events */
    pointer-events: none;
}
/* 模态框显示状态 */
.modalbox:target {
    /* 不透明为 0.8 */
    opacity: 0.8;
    /* 与 pointer-events 属性未指定时的表现效果相同 */
    /* 请参阅:https://developer.mozilla.org/zh-CN/docs/Web/CSS/pointer-events */
    pointer-events: auto;
}
/* 模态框内容,你也可以自定义 */
.modalbox-dialog {
    width: 400px;
    position: relative;
    margin: 10% auto;
    padding: 5px 20px 13px 20px;
    border-radius: 10px;
    background: #fff;
}
本站发布的部分软件和代码等由蓝色创想在网上搜集、整理、验证。仅用于个人学习、研究或欣赏。如需商业用途请购买正版。如侵犯到您的权益请告知删除。
蓝色创想 » 纯html5和css3做一个模态框

极具性价比的企业信息化方案商

了解详情 立即联系