美文网首页
响应式导航

响应式导航

作者: Wo信你个鬼 | 来源:发表于2019-06-01 18:11 被阅读0次

HTML

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>响应式导航</title>
    <link rel="stylesheet" href="css/reset.css" />
    <link rel="stylesheet" href="css/swiper.min.css" />
    <link rel="stylesheet" type="text/css" href="http://www.jq22.com/jquery/bootstrap-3.3.4.css">
    <link rel="stylesheet" href="css/head.css" />
</head>
<body>
    <!-- 导航 -->
    <header class="header"> 
        <div class="container clearfix"> 
            <div class="fl left">
                <a href="javascript:void(0)" ><img src="image/logo.png" alt="" class="img1" /></a>
                <a href="javascript:void(0)" ><img src="image/logo2.jpg" alt="" class="img2" /></a>
            </div>
            <div class="fr nav"> 
                <ul class="navbar_nav" data-in="fadeInDown" data-out="fadeOutUp">
                    <li class="active">
                        <a href="javascript:void(0)">首页</a>
                    </li>
                    <li class="dropdown">
                        <a href="javascript:void(0)">
                            业务体系
                        </a>
                        
                        <div class="dropdown_menu">
                            <a href="#">Custom Menu</a>
                            <a href="#">Custom Menu</a>
                            <a href="#">Custom Menu</a>
                        </div>
                    </li>
                    <li class="dropdown">
                        <a href="javascript:void(0)">直营园</a>
                        <div class="dropdown_menu">
                            <a href="#">Custom Menu</a>
                            <a href="#">Custom Menu</a>
                            <a href="#">Custom Menu</a>
                        </div>
                    </li>
                    <li>
                        <a href="javascript:void(0)">行知资讯</a>
                    </li>
                    <li>
                        <a href="javascript:void(0)">关于我们</a>
                    </li>
                    <li>
                        <a href="javascript:void(0)">联系合作</a>
                    </li>
                </ul>
            </div>
            <a href="javascript:void(0)" id="navToggle">
                <span><img src="image/closed.png"/></span>
            </a>
        </div>
    </header>
    <!--移动端的导航-->
    <div class="m_nav">
        <div class="top clearfix">
            <img src="image/closed.png" alt="" class="closed" />
        </div>
        <div class="logo">
            <img src="image/logo2.jpg" alt="" />
        </div>
        <ul class="ul" data-in="fadeInDown" data-out="fadeOutUp">
            <li class="active">
                <a href="javascript:void(0)">首页</a>
            </li>
            <li class="dropdown">
                <a href="javascript:void(0)">
                    业务体系
                </a>
                <div class="jt"></div>
                <div class="dropdown_menu">
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                </div>
            </li>
            <li class="dropdown">
                <a href="javascript:void(0)">直营园</a>
                <div class="dropdown_menu">
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                    <a href="#">Custom Menu</a>
                </div>
            </li>
            <li>
                <a href="javascript:void(0)">行知资讯</a>
            </li>
            <li>
                <a href="javascript:void(0)">关于我们</a>
            </li>
            <li>
                <a href="javascript:void(0)">联系合作</a>
            </li>
        </ul>
    </div>
    <div class="banner">
        <img src="image/aa.jpg">
    </div>
    <div class="box" style="height: 1000px;">
        <h3 style="text-align: center; color: aliceblue">调整浏览器宽度大小查看效果</h3>
    </div>
    <script src="http://www.jq22.com/jquery/jquery-1.10.2.js"></script>
    <script src="http://www.jq22.com/jquery/bootstrap-3.3.4.js"></script>
    <script src="js/swiper.min.js"></script>
    <script>
        $(function(){
            //超过一定高度导航添加类名
            var nav=$("header"); //得到导航对象  
            var win=$(window); //得到窗口对象  
            var sc=$(document);//得到document文档对象。  
            console.log(nav);
            console.log(win);
            console.log($('#navToggle'));
            win.scroll(function(){  
              if(sc.scrollTop()>=100){  
                nav.addClass("on"); 
                console.log(nav.addClass("on"));
              }else{  
               nav.removeClass("on");  
              }  
            })   

            //移动端展开nav
            $('#navToggle').on('click',function(){
                $('.m_nav').addClass('open');
            })
            //关闭nav
            $('.m_nav .top .closed').on('click',function(){
                $('.m_nav').removeClass('open');
            })
            
            //二级导航  移动端
            $(".m_nav .ul li").click(function() {
                $(this).children("div.dropdown_menu").slideToggle('slow');
                $(this).siblings('li').children('.dropdown_menu').slideUp('slow');              
            });

        })
    </script>
</body>
</html>

CSS

body{background-color: #1b1b1b}
/*====================导航*********/
.header{
    width:100%;
    position:fixed;
    top:0;
    left:0;
    z-index:999;
    height:50px;
    padding: 0 30px;
    background: rgba(28, 35, 39, 0.8);
}
/*左侧logo*/
.header .left{
    width: 12%;
}
.header .left a img{
    height: 40px;
    margin-top: 6px;
}
.header .left .img2{
    display: none;
}
/*右侧*/
.header .nav{
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    height: 100%;
    line-height: 50px;
    display: block;
}
.header .navbar_nav li{
    float:left;
    position: relative;
    display: block;
}
.header .navbar_nav li:after{
    content: "";
    width: 0;
    height: 2px;
    background: orangered;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: all 0.5s ease 0s;
}
.header .navbar_nav li:hover:after{
    width: 100%;
}
.header .navbar_nav li a{
    text-decoration: none;
    height: 100%;
    padding: 0 25px;
    display: block;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
    color: #fff;
    font-size: 16px;
}
.header .navbar_nav li:hover a{
    color: orangered;
}
.header .navbar_nav li.dropdown{
    display: inherit;
    position: relative;
}   
.header .navbar_nav li.dropdown .jt{
    width: 20px;
    height: 20px;
    background: url(i/top.png) no-repeat;
    background-size: 100% 100%;
    display: block;
}
.header .navbar_nav li.dropdown .dropdown_menu{
    display: none;
    position: absolute;
    top:50px;
    width: 100%;
    background: #fff;
    box-shadow: 0 15px 27px 0 rgba(167,165,165,0.38);
    width: 120%;
    left: -10%;
}
.header .navbar_nav li.dropdown .dropdown_menu a{
    font-size: 14px;
    color: #666;
    padding: 0 10px;
    line-height: 40px;
    text-align: center;
    background: #fff;
    margin-bottom: 2px;
}
.header .navbar_nav li.dropdown:hover .dropdown_menu{
    display: block;
    background: #f3f3f3;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s;
}
.header .navbar_nav li.dropdown:hover .dropdown_menu a{
    color: #666;
}
.header .navbar_nav li.dropdown:hover .dropdown_menu a:hover{
    color: #fff;
    background: orange;
}
/*白色背景的头部*/
.header.on{
    background: #fff;
    border-bottom: 1px solid #ccc;
}
.header.on .left .img1{
    display: none;
}
.header.on .left .img2{
    display: block;
}
.header.on .navbar_nav li a{
    color: #333;
}
.header.on .navbar_nav li:hover a{
    color: orangered;
}
#navToggle{
    display: none;
}

.m_nav{
    position: fixed;
    top: 0px;
    box-shadow: 0 15px 27px 0 rgba(167,165,165,0.38);
    width: 100%;
    height: 100%;
    background: #fff;
    transition: all ease 0.5s;
    -webkit-transition: all ease 0.5s;
    z-index: 1000;
    opacity: 1;
    visibility: visible;
    margin-top: 0;
    overflow-y: auto;
    transition: all .6s cubic-bezier(.77, 0, .175, 1) 0ms;
    top: 0;
    transform: translateX(100%);
}
.m_nav.open{
    transform: translateX(0);
}
.m_nav .top{
    height: 60px;
    padding: 20px;
    box-sizing: border-box;
}
.m_nav .top .closed{
    width: 30px;
    height: 30px;
    vertical-align: middle;
    float:right;
    cursor: pointer;
}
.m_nav .logo{
    width: 100%;
    margin:0 auto;
}
.m_nav .logo img{
    height: 50px;
    display: block;
    margin:30px auto;
}
.m_nav .ul{
    margin-top: 30px;
}
.m_nav .ul li{
    padding: 0 20px;
    border-bottom: 1px solid #f5f5f5;
    transform: translateY(0);
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: all .6s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all .6s cubic-bezier(.77, 0, .175, 1) 0ms;
    opacity: 0;
}
.m_nav.open .ul li{
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}
/*.m_nav .ul li:nth-child(1) {
    -webkit-transition: all .2s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all .2s cubic-bezier(.77, 0, .175, 1) 0ms;
}
.m_nav .ul li:nth-child(2) {
    -webkit-transition: all .4s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all .4s cubic-bezier(.77, 0, .175, 1) 0ms;
}
.m_nav .ul li:nth-child(3) {
    -webkit-transition: all .6s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all .6s cubic-bezier(.77, 0, .175, 1) 0ms;
}
.m_nav .ul li:nth-child(4) {
    -webkit-transition: all .8s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all .8s cubic-bezier(.77, 0, .175, 1) 0ms;
}
.m_nav .ul li:nth-child(5) {
    -webkit-transition: all 1.0s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all 1.0s cubic-bezier(.77, 0, .175, 1) 0ms;
}
.m_nav .ul li:nth-child(6) {
    -webkit-transition: all 1.2s cubic-bezier(.77, 0, .175, 1) 0ms;
    transition: all 1.2s cubic-bezier(.77, 0, .175, 1) 0ms;
}*/
.m_nav .ul li a{
    display: block;
    text-decoration: none;
    color: #333;
    font-size: 16px;
    height: 50px;
    line-height: 50px;
    width: 100%;
}
.m_nav .ul li .dropdown_menu{
    display: none;
}
.m_nav .ul li.dropdown.active .dropdown_menu{
    display: block;
}
.m_nav .ul li .dropdown_menu a{
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 40px;
    box-sizing: border-box;
    border-bottom: 1px solid #f5f5f5;
}
.m_nav .ul li .dropdown_menu a:last-child{
    border: none;
}
.banner{
    width: 100%;
}
.banner img{
    width: 100%;
}

@media screen and (max-width: 992px){
    .header{
        padding: 0 10px;
    }
    .header #navToggle {
        height: 100%;
        padding: 9px 15px;
        margin-right: -15px;
        display: inline-block;
        float: right;
    }
    .header #navToggle span {
        position: relative;
        width: 25px;
        height: 1px;
        margin-top: 19px;
    }
    /*.header #navToggle span:before,
    .header #navToggle span:after {
        content: '';
        position: relative;
        width: 100%;
        height: 1px;
        left: 0;
    }
    .header #navToggle span,
    .header #navToggle span:before,
    .header #navToggle span:after {
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s;
        display: block;
        background: red;
    }
    .header #navToggle span:before {
        top: 8px;
    }
    .header #navToggle span:after {
        bottom: 10px;
    }
    .header #navToggle.open span:before {
        top: 10px;
        -webkit-transform: translateY(-11px) rotate(-45deg);
        -moz-transform: translateY(-11px) rotate(-45deg);
        -ms-transform: translateY(-11px) rotate(-45deg);
        -o-transform: translateY(-11px) rotate(-45deg);
        transform: translateY(-11px) rotate(-45deg);
    }
    .header #navToggle.open span:after {
        bottom: 12px;
        -webkit-transform: translateY(10px) rotate(45deg);
        -moz-transform: translateY(10px) rotate(45deg);
        -ms-transform: translateY(10px) rotate(45deg);
        -o-transform: translateY(10px) rotate(45deg);
        transform: translateY(10px) rotate(45deg);
    }
    .header #navToggle.open span {
        background: none;
    }
    .header #navToggle.open span:before,
    .header #navToggle.open span:after {
        background: #4f4f4f;
    }
    */
    .header .nav{
        display: none;
    }
    
    .banner img{
        height: 600px;
        object-fit: cover;
    }
}

相关文章

  • 响应式导航

    HTML CSS

  • 字体图标,响应式图片,导航条

    字体图标 响应式图片 导航条

  • bootstrap响应式导航

    本人正在学习前端,最近学会了利用bootstrap框架制作响应式导航 何为响应式导航呢,就是如果用户对屏幕进行拉伸...

  • 5.1从0实现响应式导航栏

    本节将分享如何从0实现一个响应式导航栏。 响应式导航栏是静态网站特别常见的需求,多数网站都是基于Twitter推出...

  • 响应式导航栏

    效果: html: ...

  • 子组件

    制作导航栏组件,使用了bootstrap样式使用响应式布局,在页面宽度缩小时导航栏会变成折叠式导航栏,点击有侧按钮...

  • Bootstrap

    表格: 响应式布局 下拉菜单: 表单: 导航: 02导航条:navbar 03: 完成品: NEW JavaScr...

  • Bootstrap-响应式导航

    响应式导航的创建 主要代码 知识点 .navbar-inverse 倒置的导航栏 .navbar-fixed-t...

  • Bootstrap之响应式导航

    响应式导航(Responsive Nav)是一个很小的JavaScript插件,压缩之后仅有1.7KB,能帮你创建...

  • 响应式导航栏实现

    前言 最近想实现定制化的响应式顶部导航栏,即支持主流设备的正常访问(Phone、Pad、PC),并根据屏幕比例实现...

网友评论

      本文标题:响应式导航

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