HTML – 如何在圆形div中创建基于背景颜色的边框?

前端之家收集整理的这篇文章主要介绍了HTML – 如何在圆形div中创建基于背景颜色的边框?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图创建一个圆圈,其边框应与div颜色看起来相同,并且边框和div之间应有空格.空间之间应该显示它所处的div的背景颜色.背景颜色是可变的,所以我们不应该硬编码.

相反,我使用rgba模式给出了透明度.所有工作正常我试图在圆圈悬停时获得此效果,但我无法得到悬停,因为我试图显示:阻止悬停和正常状态下显示:无;这是为后选择器,因此我尝试使用后选择器.


CSS

.main{
    width:80px;
    height:80px;
    border-radius:100%;
    background-color:#007eff;
    text-align:center;
    line-height:80px;

}
.main:hover + .main:after{
    display:block;

}
.main:after{
      width:86px;
    height:86px;
    border-radius:100%;
    background:rgba(255,255,0.1);
    border:2px solid #007eff;
    position:absolute;
    content:"";
    z-index:-1;
    top:3px;
    left:3px;
   display:none;
}
body{
    background-color:#888;
}

HTML

<div class="main"><i class="fa fa-camera-retro fa-lg"></i>
</div>

PROBLEM STATE
ON HOVER它应该变得像THIS一样,如果可能的话
如果有任何教程要做,我很乐意学习.谢谢

解决方法

设定位置:相对;到.main并设置.main的左/右/上/下:后到零并添加转换:所有缓动0.3秒用于动画.

在.main:hover:将左/右/上/下更改为-5px后.

demo

.main{
    width:80px;
    height:80px;
    border-radius:100%;
    background-color:#007eff;
    text-align:center;
    line-height:80px;
    position:relative;
    margin:6px;
}

.main:after{
    border-radius:100%;
    background:rgba(255,0.1);
    border:2px solid #007eff;
    position:absolute;
    content:"";
    z-index:-1;
    top:0px;
    left:0;
    bottom:0;
    right:0;
     transition:all ease 0.3s;
}
.main:hover:after{
    top:-5px;
    bottom:-5px;
    right:-5px;
    left:-5px;
}

猜你在找的HTML相关文章