使用纯CSS实现小球变矩形背景的按钮悬停效果的方法-创新互联

这篇文章主要介绍了使用纯CSS实现小球变矩形背景的按钮悬停效果的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

成都创新互联长期为近1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为昌邑企业提供专业的做网站、成都网站制作昌邑网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。效果预览

使用纯CSS实现小球变矩形背景的按钮悬停效果的方法

源代码下载

https://github.com/comehope/front-end-daily-challenges

代码解读

定义 dom,导航中包含一个无序列表,列表中有一个列表项:

居中显示:

body {
    margin: 0;
    height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: lightyellow;
}

隐藏列表项前端的引导符号:

nav ul {
    padding: 0;
    list-style-type: none;
}

设置容器尺寸:

nav li {
    width: 8em;
    height: 2em;
    font-size: 25px;
}

设置文字样式:

nav li {
    font-size: 25px;
    text-align: center;
    line-height: 2em;
    font-family: sans-serif;
    text-transform: capitalize;
}

添加伪元素,伪元素是 2 个小球:

nav li {
    position: relative;
}

nav li::before,
nav li::after {
    content: '';
    position: absolute;
    width: 0.6em;
    height: 0.6em;
    background-color: gainsboro;
    border-radius: 50%;
}

把小球定位在左右两端:

nav li::before {
    top: calc(50% - 0.6em / 2);
    left: 0;
}

nav li::after {
    bottom: calc(50% - 0.6em / 2);
    right: 0;
}

接下来设置按钮悬停效果。

当鼠标悬停在按钮上时,让小球变为与容器大小相等的矩形:

nav li:hover::before,
nav li:hover::after {
    width: 100%;
    height: 100%;
    border-radius: 0;
}

第其中一个矩形稍向右下角错位,并且加深它的颜色,形成阴影效果:

nav li:hover::before {
    z-index: -1;
    top: 0;
}

nav li:hover::after {
    z-index: -2;
    bottom: -0.4em;
    right: -0.4em;
    filter: brightness(0.8);
}

设置悬停的颜色,伪元素的矩形背景变为蓝色,文字变为白色:

nav li:hover {
    color: white;
}

nav li:hover::before,
nav li:hover::after {
    background-color: dodgerblue;
}

设置缓动时间,其中伪元素的缓动时间函数用拟人的动画效果:

nav li {
    transition: 0.5s;
}

nav li::before,
nav li::after {
    transition: 0.5s cubic-bezier(0.5, -0.5, 0.25, 1.5);
}

再增加几个按钮:

最后,增加按钮之间的间距:

nav li {
    margin: 0.8em;
}

感谢你能够认真阅读完这篇文章,希望小编分享使用纯CSS实现小球变矩形背景的按钮悬停效果的方法内容对大家有帮助,同时也希望大家多多支持创新互联建站,关注创新互联网站制作公司行业资讯频道,遇到问题就找创新互联建站,详细的解决方法等着你来学习!


网站题目:使用纯CSS实现小球变矩形背景的按钮悬停效果的方法-创新互联
分享URL:http://abwzjs.com/article/cedpdg.html