文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

纯CSS3如何实现单页切换导航菜单

2024-04-02 19:55

关注

这篇文章主要为大家展示了“纯CSS3如何实现单页切换导航菜单”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“纯CSS3如何实现单页切换导航菜单”这篇文章吧。

这是一款使用纯CSS3制作的单页切换导航菜单界面设计效果。该页面效果中,在页面的左侧垂直排放一组导航按钮,当点击导航按钮时,相应的页面会从屏幕右侧滑动出来,效果非常炫酷。

纯CSS3如何实现单页切换导航菜单

 使用方法

 HTML结构

该单页切换导航菜单界面的HTML结构如下:

<div class="ct" id="t1">  
  <div class="ct" id="t2">  
    <div class="ct" id="t3">  
      <div class="ct" id="t4">  
         <div class="ct" id="t5">  
          <ul id="menu">  
            <a href="#t1"><li class="icon fa fa-bolt" id="uno"></li></a>  
            <a href="#t2"><li class="icon fa fa-keyboard-o" id="dos"></li></a>  
            <a href="#t3"><li class="icon fa fa-rocket" id="tres"></li></a>  
            <a href="#t4"><li class="icon fa fa-dribbble" id="cuatro"></li></a>  
            <a href="#t5"><li class="icon fa fa-plus-circle" id="cinco"></li></a>  
          </ul>  
          <div class="page" id="p1">  
             <section class="icon fa fa-bolt"><span class="title">Bolt</span><span class="hint">...</section>     
          </div>  
          <div class="page" id="p2">  
            <section class="icon fa fa-keyboard-o"><span class="title">Type</span></section>  
          </div>     
          <div class="page" id="p3">  
            <section class="icon fa fa-rocket"><span class="title">Rocket</span></section>  
          </div>  
          <div class="page" id="p4">  
            <section class="icon fa fa-dribbble">  
              <span class="title">Dribbble</span>  
              <p class="hint">  
                Im ready to play, <span class="hint line-trough">invite me </span> find me   
              </p>  
              <p class="hint">...</p>  
            </section>  
          </div>    
          <div class="page" id="p5">  
            <section class="icon fa fa-plus-circle">  
              <span class="title">More</span>  
              <p class="hint">  
                ...   
              </p>  
            </section>  
          </div>    
        </div>  
      </div>  
    </div>  
  </div>  
</div>

CSS样式

该单页切换导航菜单界面使用transform和transition来制作页面的切换动画效果。并通过:target伪元素来完成按钮点击时的页面切换。完整的CSS代码如下,代码中没有添加浏览器厂商的前缀。

html, body, .page {   
  width: 100%;   
  height: 100%;   
  margin: 0;   
  padding: 0;   
  transition: all .6s cubic-bezier(.5, .2, .2, 1.1);   
  color: #fff;   
  overflow: hidden;    
}   
    
* {   
  font-family: 'open sans', 'lato', 'helvetica', sans-serif;   
}   
    
.page {   
  position: absolute;   
}   
    
#p1 {   
  left: 0;   
}   
    
#p2, #p3, #p4, #p5 {   
  left: 200%;   
}   
    
#p1 { background: darkslateblue; }   
#p2 { background: tomato; }   
#p3 { background: gold; }   
#p4 { background: deeppink; }   
#p5 { background: #9b59b6; }   
    
#t2:target #p2,   
#t3:target #p3,   
#t4:target #p4,   
#t5:target #p5 {   
  transform: translateX(-190%);   
  transition-delay: .4s !important;   
}   
    
#t2:target #p1,    
#t3:target #p1,   
#t4:target #p1,   
#t5:target #p1{   
  background: black;   
}   
    
#t2:target #p1 .icon,    
#t3:target #p1 .icon,   
#t4:target #p1 .icon,   
#t5:target #p1 .icon {   
  -webkit-filter: blur(3px);   
  filter: blur(3px);   
}   
    
.icon {   
  color: #fff;   
  font-size: 32px;   
  display: block;   
}   
    
ul .icon:hover {   
  opacity: 0.5;   
}   
    
.page .icon .title {   
  line-height: 2;   
}   
    
#t2:target ul .icon,   
#t3:target ul .icon,   
#t4:target ul .icon,   
#t5:target ul .icon{   
  transform: scale(.6);   
  transition-delay: .25s;   
}   
    
#t2:target #dos,   
#t3:target #tres,   
#t4:target #cuatro,   
#t4:target #cinco {   
  transform: scale(1.2) !important;   
}   
    
ul {   
  position: fixed;   
  z-index: 1;   
  top: 0;   
  bottombottom: 0;   
  left: 0;   
  margin: auto;   
  height: 280px;   
  width: 10%;   
  padding: 0;   
  text-align: center;   
 }   
    
#menu .icon {   
  margin: 30px 0;   
  transition: all .5s ease-out !important;   
}   
    
a {   
  text-decoration: none;   
}   
    
.title, .hint {   
  display: block;   
}   
    
.title {   
  font-size: 38px;   
}   
    
.hint {   
  font-size: 13px;   
}   
    
#p4 .hint {   
  display: inherit !important;   
}   
    
.hint a {   
  color: yellow;   
  transition: all 250ms ease-out;   
}   
    
.hint a:hover {   
  color: #FFF;   
}   
    
.line-trough {   
  text-decoration: line-through;   
}   
    
.page .icon {   
  position: absolute;   
  top: 0;   
  bottombottom: 0;   
  rightright: 10%;   
  left: 0;   
  width: 270px;   
  height: 170px;   
  margin: auto;   
  text-align: center;   
  font-size: 80px;   
  line-height: 1.3;   
  transform: translateX(360%);   
  transition: all .5s cubic-bezier(.25, 1, .5, 1.25);   
}   
    
.page#p1 .icon {   
  height: 220px;   
}   
    
.page#p1 .icon {   
  transform: translateX(10%) !important;   
}   
    
#t2:target .page#p2 .icon,   
#t3:target .page#p3 .icon,   
#t4:target .page#p4 .icon,   
#t5:target .page#p5 .icon {   
  transform: translateX(0) !important;   
  transition-delay: 1s;   
}

以上是“纯CSS3如何实现单页切换导航菜单”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯