移动下划线导航(magicline navigation)

移动下划线导航(magicline navigation)

效果:当鼠标移到相对应的导航上时,导航栏下面的下划线也会移到相应的位置;当点击相应的导航时,会展现出不同的内容。

实现:html+css+jQuery

思路:写好布局,下划线的内容的展示区域为绝对定位。下划线默认位置为导航的第一项,当鼠标移到相应的导航上时,改变下划线的定位值,当鼠标点击相应的导航项时,通过改变每个导航项对应内容区域的z-index值,让当前被选中的内容显示在页面上。

代码
html:

        <nav>
            <ul class="magicline clearfix">
                <li class="nav-1">
                    <a href="#">Navigation 1</a>
                </li>
                <li class="nav-2">
                    <a href="#">Navigation 2</a>
                </li>
                <li class="nav-3">
                    <a href="#">Navigation 3</a>
                </li>
                <li class="nav-4">
                    <a href="#">Navigation 4</a>
                </li>
                <li class="slidestoke"></li>
            </ul>
            <div class="show-area">
                <div id="show-area-1">
                    <img src="image/images.jpg"/>
                </div>
                <div id="show-area-2">
                    <img src="image/1.jpg"/>
                </div>
                <div id="show-area-3">
                    <img src="image/下载 (1).jpg"/>
                </div>
                <div id="show-area-4">
                    <img src="image/下载.jpg"/>
                </div>
            </div>
        </nav>

css:

*{
                padding: 0;
                margin: 0;
            }
            a{
                text-decoration: none;
            }
            nav{
                margin: 50px;
                position: relative;
            }
            .clearfix:before,
            .clearfix:after{
                display:table;
                content:"";
            }
            .clearfix:after{
                clear:both;
            }
            .clearfix{
                *zoom:1
            } 
            .magicline{

            }
            .magicline li{
                list-style: none;
                float: left;
                width: 180px;
                height: 35px;
                line-height: 35px;
                text-align: center;
                background: lightblue;
            }
            .magicline .slidestoke{
                position: absolute;
                width: 180px;
                height: 5px;
                background: lightcoral;
                margin-top: 2px;
                top: 35px;
                left: 0;
            }
            .nav-1:hover,
            .nav-2:hover,
            .nav-3:hover,
            .nav-4:hover{
                font-weight: bold;
            }
            .nav-1:hover~.slidestoke{
                left: 0;
            }
            .nav-2:hover~.slidestoke{
                left: 180px;
            }
            .nav-3:hover~.slidestoke{
                left: 360px;
            }
            .nav-4:hover~.slidestoke{
                left: 540px;
            }
            .show-area{
                position: relative;
            }
            .show-area div{
                width: 720px;
                height: 400px;
                background: lightblue;
                position: absolute;
                top: 5px;
                left: 0;
                z-index: 1;
            }

jQuery:

$(document).ready(function(){
                $('.nav-1').click(function(){
                    $('.show-area div').each(function(){
                        $(this).css('z-index',1);
                    })
                    $('#show-area-1').css('z-index',999);
                });
                $('.nav-2').click(function(){
                    $('.show-area div').each(function(){
                        $(this).css('z-index',1);
                    })
                    $('#show-area-2').css('z-index',999);
                });
                $('.nav-3').click(function(){
                    $('.show-area div').each(function(){
                        $(this).css('z-index',1);
                    })
                    $('#show-area-3').css('z-index',999);
                });
                $('.nav-4').click(function(){
                    $('.show-area div').each(function(){
                        $(this).css('z-index',1);
                    })
                    $('#show-area-4').css('z-index',999);
                });
            })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值