html点击出现表单弹窗

内含全部源码

项目场景:

在系统中,点击某个按钮如何弹出一个表单弹窗并且设置遮罩层,如下图所示。
在这里插入图片描述

在上图中,我们实现了点击按钮跳出弹窗的效果,主要用到的是css中position固定定位和利用js改变display的值来进行显示和隐藏页面。
编译器:idea


源码展示:

首先讲到我们的遮罩层(灰色部分),它是由点击事件来进行触发
css

 /* 遮罩层样式 */
        .overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0,0,0,0.5);
            display: none; /* 默认隐藏 */
        }

html

<div class="overlay" id="overlay"></div>

可以看到我们设置的display是默认隐藏的,那么通过点击事件来改变它原有的display就可以做到显示和隐藏效果。
弹窗效果
css

 .popup {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            padding: 20px;
            background-color: #fff;
            border: 1px solid #ccc;
            border-radius: 5px;
            display: none; /* 默认隐藏 */
        }

html

<div class="popup" id="popup">
  <label>序号:</label>
    <input type="text" value="" placeholder="请输入ID"/><br><br>
    <label>名称:</label>
    <input type="text" value="" placeholder="请输入名称" /><br><br>
    <label>类型</label>
    <select>
        <option>1</option>
        <option>2</option>
    </select><br><br>
    <button id="closebtn()">关闭</button>
    <button type="submit">提交</button></div>

上面的效果也是通过display来进行改变样式。

表单效果
css

 label {
            width: 100px;
            margin-bottom: 10px;
        }

        input[type="text"], select {
            padding: 8px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-size: 16px;
            color: #555;
        }

        select option {
            color: #555;
        }
        button {
            padding: 5px 10px;
            border-radius: 3px;
            border: none;
            background-color: #007bff;
            color: #fff;
            cursor: pointer;
        }
        button:hover {
            background-color: #0069d9;
        }

html

<label>序号:</label>
    <input type="text" value="" placeholder="请输入ID"/><br><br>
    <label>名称:</label>
    <input type="text" value="" placeholder="请输入名称" /><br><br>
    <label>类型</label>
    <select>
        <option>1</option>
        <option>2</option>
    </select><br><br>
    <button id="closebtn()">关闭</button>
    <button type="submit">提交</button>

全部源码展示:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>表单弹窗</title>
    <style>
        /* 遮罩层样式 */
        .overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0,0,0,0.5);
            display: none; /* 默认隐藏 */
        }

        /* 弹窗样式 */
        .popup {
            position: fixed;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            padding: 20px;
            background-color: #fff;
            border: 1px solid #ccc;
            border-radius: 5px;
            display: none; /* 默认隐藏 */
        }
        label {
            width: 100px;
            margin-bottom: 10px;
        }

        input[type="text"], select {
            padding: 8px;
            border: 1px solid #ccc;
            border-radius: 4px;
            font-size: 16px;
            color: #555;
        }

        select option {
            color: #555;
        }
        button {
            padding: 5px 10px;
            border-radius: 3px;
            border: none;
            background-color: #007bff;
            color: #fff;
            cursor: pointer;
        }
        button:hover {
            background-color: #0069d9;
        }

    </style>
</head>
<body>
<button id="openbtn">添加</button>
<div class="overlay" id="overlay"></div>
<div class="popup" id="popup">
<form>
    <label>
        序号:
    </label>
    <input type="text" value="" placeholder="请输入ID"/><br><br>
    <label>名称:</label>
    <input type="text" value="" placeholder="请输入名称" /><br><br>
    <label>类型</label>
    <select>
        <option>1</option>
        <option>2</option>
    </select><br><br>
    <button id="closebtn()">关闭</button>
    <button type="submit">提交</button>
</form>
</div>
<script>
    const openbtn=document.getElementById('openbtn');
    const closebtn=document.getElementById('closebtn');
    const popup=document.getElementById('popup');
    const overlay=document.getElementById('overlay');
    openbtn.addEventListener('click',function(){
        popup.style.display='block';
        overlay.style.display='block';
    })
</script>
</body>
</html>

  • 13
    点赞
  • 111
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: HTML优雅好看的表单弹窗是指在网页中使用HTML代码设计的一种美观且具有良好用户体验的弹出表单窗口。 要实现一个优雅好看的表单弹窗,可以考虑以下几点: 1. 外观设计:选用合适的颜色和字体,确保与网页整体风格相协调。可以使用CSS样式对弹窗进行美化,如圆角边框、渐变背景等。 2. 布局:合理安排表单元素的位置和大小,使其排列整齐。可以使用CSS的弹性盒子布局或网格布局,以适应不同屏幕尺寸的设备。 3. 响应式设计:确保表单弹窗在不同尺寸的设备上都能正常显示和操作。可以通过使用媒体查询和响应式单位来实现自适应布局。同时,还可以使用@media规则定制不同屏幕尺寸下的样式。 4. 静态与动态效果:可以添加适当的过渡效果或动画效果,增加用户对表单弹窗的体验。例如,可以使用CSS3实现淡入淡出效果或滑动效果,或者使用JavaScript库如jQuery UI来实现更多复杂的动画效果。 5. 表单验证与反馈:对表单输入进行验证,确保用户输入的数据符合要求。可以使用HTML5表单验证属性和JavaScript进行验证,并在出现错误时提供明确的错误提示。 总之,一个优雅好看的表单弹窗需要综合考虑外观设计、布局、响应式设计、静态与动态效果以及表单验证与反馈等方面,以提供用户友好的交互体验。通过合理运用HTMLCSS和JavaScript等技术,我们可以设计出吸引人、美观实用的表单弹窗。 ### 回答2: 要创建一个优雅好看的表单弹窗,可以遵循以下几个步骤: 1. 使用HTML来构建表单弹窗的基本结构。可以使用div元素作为弹窗的容器,并设置样式来控制其位置、大小和颜色等。在弹窗内部,可以使用form元素来放置表单的各个组件。 2. 使用CSS来美化表单弹窗。可以自定义弹窗的样式,如背景颜色、边框、圆角等。还可以设置表单组件的样式,如输入框的边框、背景色、字体等。可以使用CSS动画效果来增加弹窗的过渡效果,如淡入淡出、滑动等。 3. 使用JavaScript来实现表单弹窗的交互。可以为弹窗添加打开和关闭的功能,比如点击按钮或链接时弹出表单点击关闭按钮或背景遮罩时关闭表单。可以使用JavaScript获取表单数据,并进行验证和处理。可以通过事件监听来实现弹窗的响应,如点击弹窗外部区域关闭弹窗的功能。 4. 添加一些额外的功能,使表单弹窗更加用户友好。例如,可以为输入框添加占位符、格式化提示信息,并在表单提交时给出反馈提示。还可以添加错误提示,帮助用户更准确地填写表单内容。可以为弹窗添加拖动功能,使用户能够自由移动弹窗的位置。 总之,要创建一个优雅好看的表单弹窗,需要在HTMLCSS和JavaScript的基础上进行设计和开发,注意样式的统一性和一致性,同时提供良好的用户交互体验和反馈。 ### 回答3: HTML优雅好看的表单弹窗可以通过以下方式实现: 首先,在HTML中创建一个按钮或者其他触发弹窗事件的元素,例如一个提交按钮或者一个图片。然后,在CSS文件中设置该元素的样式,使其看起来漂亮和吸引人。可以使用自定义的背景颜色、边框样式和按钮样式等,以及过渡效果和动画效果,使其更加优雅。 接下来,在JavaScript文件中编写代码,实现点击触发的行为。可以使用事件监听器,在点击按钮或图片时,显示弹窗。可以使用DOM操作,创建一个新的元素作为弹窗容器,并设置其样式和位置。可以根据需要调整弹窗大小、位置和样式,使其适应不同设备和屏幕尺寸。 然后,在弹窗容器中创建表单元素,可以使用HTML表单标签,如<input>、<label>、<textarea>等,来创建各种表单元素。可以使用CSS样式美化表单元素,例如调整字体样式、添加边框样式和背景颜色等,使其更加美观。 最后,在JavaScript中编写代码,处理表单的提交和关闭行为。可以使用事件监听器,监听提交按钮的点击事件,并在表单提交时执行相关的操作,如验证表单数据、发送表单数据到服务器等。可以使用按钮或者其他元素,触发关闭弹窗的行为,例如点击弹窗外部区域或者点击关闭按钮。可以通过DOM操作,从文档中移除弹窗元素,或者通过改变样式隐藏弹窗。 通过上述步骤,我们可以实现一个优雅好看的HTML表单弹窗,同时满足美观和实用的要求。当用户点击按钮或者其他触发弹窗事件的元素时,弹窗会以漂亮的方式显示,包含表单元素,用户可以输入和提交数据。而且我们可以通过JavaScript代码,对表单进行验证和处理,实现更多的功能和交互效果。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱吃巧克li

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值