css中怎么设置弹出对话框

admin 轻心小站 关注 LV.19 运营
发表于前端技术学习版块 css,教程

CSS中设置弹出对话框可以使用伪元素的方式,具体代码如下:.btn { position: relative; } .btn::after { content: ; position: absolut

CSS中设置弹出对话框可以使用伪元素的方式,具体代码如下:

.btn {
    position: relative;
}

.btn::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
    white-space: pre-wrap;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.btn:hover::after {
    visibility: visible;
    opacity: 1;
} 

以上代码中,我们给按钮添加了一个伪元素来实现弹出对话框的效果,具体解释如下:

首先,我们给按钮添加了相对定位的样式,这是因为我们要给伪元素设置绝对定位,以相对于按钮进行定位。

.btn {
    position: relative;
} 

然后,我们使用“::after”伪元素来添加弹出对话框的容器,我们设置“position: absolute”,“top: 100%”,“left: 50%”来使对话框的位置在按钮正下方,并且水平居中。

.btn::after {
    content: "";
    position: absolute;
    z-index: 1;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
    white-space: pre-wrap;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
} 

接着,我们设置对话框的样式,包括背景色、边框、阴影、圆角、内边距、字体大小、行高、文本换行等。

.btn::after {
    background-color: #fff;
    border: 1px solid #ccc;
    box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);
    border-radius: 5px;
    padding: 10px;
    font-size: 14px;
    line-height: 1.5;
    white-space: pre-wrap;
} 

最后,我们设置对话框的初始状态,包括不可见和透明度为0,同时设置过渡效果,当鼠标悬停在按钮上时,改变对话框的可见性和透明度以及过渡效果,使其平滑地弹出。

.btn::after {
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}

.btn:hover::after {
    visibility: visible;
    opacity: 1;
} 

通过以上代码,我们可以非常方便地实现弹出对话框的效果。

文章说明:

本文原创发布于探乎站长论坛,未经许可,禁止转载。

题图来自Unsplash,基于CC0协议

该文观点仅代表作者本人,探乎站长论坛平台仅提供信息存储空间服务。

评论列表 评论
发布评论

评论: css中怎么设置弹出对话框

粉丝

0

关注

0

收藏

0

已有0次打赏