【前端设计】炫酷导航栏

欢迎来到前端设计专栏,本专栏收藏了一些好看且实用的前端作品,使用简单的html、css语法打造创意有趣的作品,为网站加入更多高级创意的元素。

html

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="nav.css">
</head>
<body>
    <div class="wrapper">
        <nav>
            <input type="radio" name="tab" id="home" checked>
            <input type="radio" name="tab" id="thumbs">
            <input type="radio" name="tab" id="share">
            <input type="radio" name="tab" id="collection">
            <input type="radio" name="tab" id="comments">
            <label for="home" class="home">
                <a href="#">首页</a>
            </label>
            <label for="thumbs" class="thumbs">
                <a href="#">点赞</a>
            </label>
            <label for="share" class="share">
                <a href="#">分享</a>
            </label>
            <label for="collection" class="collection">
                <a href="#">收藏</a>
            </label>
            <label for="comments" class="comments">
                <a href="#">评论</a>
            </label>
            <div class="active"></div>
        </nav>
    </div>
</body>
</html>

css

css 复制代码
* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}
body {
  display: flex;
  height: 100vh;
  justify-content: center;
  align-items: center;
  line-height: 60px;
}
.wrapper {
  height: 60px;
  width: 55vw;
  background-color: #eff;
  box-shadow: 0 6px 16px ;
  box-shadow: 0 6px 16px #0000003f;
  border-radius: 30px;
}

.wrapper nav {
    display: flex;
    position: relative;
}
.wrapper nav label{
    flex: 1;
    cursor: pointer;
    position: relative;
    z-index: 1;
}
.wrapper nav label a{
    color: #1d1f60;
    font-size: 21px;
    font-weight: 500;
    text-decoration: none;
    position: relative;
    z-index: -1;
}
.wrapper nav label a i{
    font-size: 21px;
    margin: 0 6px 0 29px;
}
.wrapper nav .active{
    position: absolute;
    background: linear-gradient(45deg,#06ace0 0%,#8600e6 100%);
    height: 100%;
    width: 20%;
    left: 0;
    bottom: 0;
    border-radius: 30px;
    transition: 0.6s cubic-bezier(0.6, -0.6, 0.26, 1.6);
}
.wrapper nav #home:checked ~ label.home a,
.wrapper nav #thumbs:checked ~ label.thumbs a,
.wrapper nav #share:checked ~ label.share a,
.wrapper nav #collection:checked ~ label.collection a,
.wrapper nav #comments:checked ~ label.comments a{
    color: #fff;
}
.wrapper nav #thumbs:checked ~ .active{
    left: 20%;
}
.wrapper nav #share:checked ~ .active{
    left: 40%; 
}
.wrapper nav #collection:checked ~ .active{
    left: 60%;
}
.wrapper nav #comments:checked ~ .active{
    left: 80%;
}

.wrapper nav input{
    display: none;
}
相关推荐
To_OC5 小时前
别再串行写 await 了,Promise.all 才是并行请求的正确打开方式
前端·javascript·promise
vipbic5 小时前
中后台越做越乱后,我用插件化把它救回来了
前端·vue.js
Hyyy6 小时前
Computer Use 适合做什么,不适合做什么——一次真实使用后的思考
前端
小和尚同志6 小时前
前端 AI 单元测试思考与落地
前端·人工智能·aigc
invicinble7 小时前
c端系统,其实更像一个信息展示平台
前端
李姆斯8 小时前
管理是否可以被完全量化
前端·产品经理·团队管理
名字还没想好☜9 小时前
Next.js 中间件实战:鉴权、重定向与 A/B 分流
开发语言·前端·javascript·中间件·react·next.js
广州灵眸科技有限公司9 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) INI文件操作
java·前端·javascript·网络·人工智能
kaiking_g9 小时前
vue项目中,静态导入 vs 动态导入 详解
前端·javascript·vue.js
江华森9 小时前
Web 开发基础:HTTP 与 REST
前端·网络协议·http