美文网首页
CSS3移动端侧边栏

CSS3移动端侧边栏

作者: 0清婉0 | 来源:发表于2021-03-12 20:28 被阅读0次

今天工作中要做一个移动端侧边栏,于是在项目中加入了一些最近学到的CSS3效果。

菜单依次显示的时间上可以缩短,之前这个代码有些BUG,后来改了时间就好了。

【HTML】

<div class="slide_mask"></div>

<ul class="nav_grid">

    <li class="menu"></li>

    <li class="nav_grid_first">

        <ul class="sidenav">

            <li class="sou">

                <form action="" name="searchForm" method="post" target="_blank">

                    <input type="hidden" name="dateFlag" value="false" />

                    <input type="hidden" name="siteName" value="english" />

                    <input type="hidden" name="pageNum" value="1">

                    <input type="text" name="keyword" id="keyword" class="s1" value="" />

                    <input type="image" name="button" id="button" class="s2" value="search" src="删除

/uploads/user_upload/68618/ico7.png" />

                </form>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Home</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>China Politics</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Foreign Affairs</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Opinions</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Business</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Military</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>World</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Society</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Culture</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Video</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Travel</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Science</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Sports</span></a>

            </li>

            <li class="nav_items"><a href="" target="_blank"><span>Photo</span></a>

            </li>

        </ul>

    </li>

</ul>

【CSS】

ol,ul,li {

    list-style: none;

}

.nav_grid li.menu {

    display: block;

    background: url(/uploads/user_upload/68618/menu.png) no-repeat;

    width: 28px;

    height: 26px;

    float: left;

    margin-top: 6.5%;

    margin-left: 5%;

    background-size: 65% auto;

}

.slide_mask {

    position: absolute;

    z-index: 2;

    left: 0;

    top: 0;

    width: 100%;

    height: 100%;

    background: transparent;

    display: none;

    overflow: hidden;

    -webkit-transition: all 0.3s ease-out;

    -moz-transition: all 0.3s ease-out;

    -ms-transition: all 0.3s ease-out;

    -o-transition: all 0.3s ease-out;

    transition: all 0.3s ease-out;

}

.sidenav {

    display: block;

    position: absolute;

    top: 0;

    left: 0;

    bottom: 0;

    background: #f5f5f7;

    width: 5.9rem;

    padding-top: 1.6em;

    transform: translateX(-5.9rem);

    z-index: 99;

    height: 100%;

}

.sidenav li.sou {

    margin: 0 auto;

    width: 5.493rem;

    position: relative;

    margin-bottom: 10px;

}

.sidenav li.sou input.s1 {

    width: 4.493rem;

    height: 0.773rem;

    text-indent: 1.2em;

    border: 1px solid #c1c1c2;

    border-radius: 0.373rem;

    padding-right: 1rem;

}

.sidenav li.sou input.s2 {

    width: 10%;

    height: auto;

    top: 0.3em;

    right: 0.2em;

    position: absolute;

}

.sidenav li.nav_items {

    height: 1rem;

    line-height: 1rem;

    font-size: 1.6em;

    text-indent: 1.2em;

    border-bottom: 1px solid #c9c9ca;

    text-align: left;

}

.sidenav li:last-child {

    border-bottom: none;

}

.sidenav li a {

    text-decoration: none;

}

.sidenav.moved {

    -webkit-transform: translate3d(0, 0, 0);

    -moz-transform: translate3d(0, 0, 0);

    -ms-transform: translate3d(0, 0, 0);

    -o-transform: translate3d(0, 0, 0);

    transform: translate3d(0, 0, 0);

}

.sidenav.moved li.nav_items span {

    transform: perspective(100px) rotateX(0) translateZ(24px) scale(1);

    transition: all .4s;

    opacity: 1;

}

.sidenav li.nav_items span {

    transform: perspective(100px) rotateX(90deg) translateZ(24px) scale(1.5);

    opacity: 0;

}

.sidenav li.nav_items:nth-child(1) span {

    transition-delay: .08s;

}

.sidenav li.nav_items:nth-child(2) span {

    transition-delay: .16s;

}

.sidenav li.nav_items:nth-child(3) span {

    transition-delay: .24s;

}

.sidenav li.nav_items:nth-child(4) span {

    transition-delay: .32s;

}

.sidenav li.nav_items:nth-child(5) span {

    transition-delay: .40s;

}

.sidenav li.nav_items:nth-child(6) span {

    transition-delay: .48s;

}

.sidenav li.nav_items:nth-child(7) span {

    transition-delay: .56s;

}

.sidenav li.nav_items:nth-child(8) span {

    transition-delay: .64s;

}

.sidenav li.nav_items:nth-child(9) span {

    transition-delay: .72s;

}

.sidenav li.nav_items:nth-child(10) span {

    transition-delay: .80s;

}

.sidenav li.nav_items:nth-child(11) span {

    transition-delay: .88s;

}

.sidenav li.nav_items:nth-child(12) span {

    transition-delay: .96s;

}

.sidenav li.nav_items:nth-child(13) span {

    transition-delay: 1.04s;

}

.sidenav li.nav_items:nth-child(14) span {

    transition-delay: 1.12s;

}

.sidenav li.nav_items:nth-child(15) span {

    transition-delay: 1.20s;

}

【JS】

$(document).ready(function() {

    $('.nav_grid li.menu').on('click', function() {

        $('.slide_mask').show();

        $('.sidenav').addClass('moved');

    });

    $('.slide_mask').on('click', function() {

        $('.slide_mask').hide();

        $('.sidenav').removeClass('moved');

    });

});

相关文章

  • CSS3移动端侧边栏

    今天工作中要做一个移动端侧边栏,于是在项目中加入了一些最近学到的CSS3效果。 菜单依次显示的时间上可以缩短,之前...

  • js插件之iscroll,swiper0814

    js插件之iscroll,swiper 1.iscroll 1.1我们在电商网站移动端经常会看见有侧边栏,如下图 ...

  • js+css实现简单侧边栏

    在web端,侧边栏经常会出现,代码展示如何实现侧边栏的定位实现侧边栏定位最简单的就是使用固定定位,但是固定定位在i...

  • Tailwind Sidebar

    侧边栏 侧边栏

  • 逻辑思维

    技术栈有哪些 写一个头部固定,左侧边栏固定,右边内容自适应的布局,请给出多种写法 平时PC端和移动端哪个接触的多 ...

  • 前端特效收集器

    前端特效收集器 近20个绚丽实用的jQuery/CSS3侧边栏菜单 9种css3圆形按钮hover鼠标经过动画效果...

  • 关于侧边栏定点隐藏问题

    一些PC端的页面会有一个fixed定位的侧边导航栏,我们需要它定点隐藏 首先,对侧边栏的隐藏用visibility...

  • h5页面在手机端禁用横向滚动

    公司项目需要用h5做移动端网站,其中有一个功能要用到侧边导航栏。 在浏览器中模拟测试的时候直接使用...

  • 11、CSS3新特性 新增选择器 、伪元素选择器及应用场景(浮

    CSS3新特性 CSS3 的现状 新增的CSS3特性有兼容性问题,ie9+才支持 移动端支持优于 PC 端 不断改...

  • 移动端原型图设计

    一、移动端界面的6大模块 移动端界面的包含了6大模块:状态栏、导航栏、内容区域、标签栏、轻提示、弹出层。 状态栏显...

网友评论

      本文标题:CSS3移动端侧边栏

      本文链接:https://www.haomeiwen.com/subject/aqzzqltx.html