js 选中的导航居中 两边除外

html

<div class="nav-arc">
        <div class="nav">
            <ul class="nav-list">
                <li onclick="window.location.href='/video?tid=0'">全部</li>
                                    <li onclick="window.location.href='/video?tid=1'">大讲堂</li>
                                    <li onclick="window.location.href='/video?tid=2'">信息药师</li>
                                    <li onclick="window.location.href='/video?tid=3'" class="active">审方药师</li>
                                    <li onclick="window.location.href='/video?tid=4'">调剂药师</li>
                                    <li onclick="window.location.href='/video?tid=5'">药剂科主任DRG精英班</li>
                                    <li onclick="window.location.href='/video?tid=6'">医管专题</li>
                            </ul>
        </div>
    </div>

css


     .nav .nav-list {
         display: flex;
         justify-content: space-between;
         flex-wrap: nowrap;
         overflow-x: scroll;
     }
     .nav .nav-list::-webkit-scrollbar {display:none}
     .nav .nav-list li{
         width:auto;
         padding: .1rem .3rem;
         white-space: nowrap;
         font-size: .38rem;
     }
     .nav-list .active {
         border-bottom: .05rem solid #43a2de;
     }

js

        var moveX = $('.active').position().left + $('.active').parent().scrollLeft();
        var pageX = document.documentElement.clientWidth;
        var blockWidth = $('.active').width();
        var left = moveX - (pageX / 2) + (blockWidth / 2);
        $(".nav-list").scrollLeft(left);

也可以配合swiper使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现轮播图居中两边有盒子的效果,可以通过以下步骤来实现: 1. 在轮播图的容器外层包裹一个父容器,设置这个父容器的宽度为100%。 2. 在父容器中添加两个盒子,用于承载左右两侧的内容。设置这两个盒子的宽度为父容器宽度的一半,同时设置它们的位置为左右两侧。 3. 在轮播图容器中添加以下样式: ```css margin: 0 auto; /* 设置水平居中 */ width: 100%; /* 设置宽度为100% */ ``` 这样可以让轮播图容器在父容器中水平居中,并且宽度和父容器一样大。 4. 最后,调整轮播图的样式,使其与左右两侧的盒子之间有一定的间距。可以通过以下样式来实现: ```css .carousel-control.left { margin-left: -50px; } .carousel-control.right { margin-right: -50px; } ``` 这样就可以实现轮播图居中两边有盒子的效果了。完整的代码示例如下: ```html <div class="container-fluid"> <div class="row"> <div class="col-xs-6 left-box"> <!-- 左侧内容 --> </div> <div class="col-xs-6 right-box"> <!-- 右侧内容 --> </div> </div> <div class="row"> <div id="myCarousel" class="carousel slide" data-ride="carousel"> <ol class="carousel-indicators"> <li data-target="#myCarousel" data-slide-to="0" class="active"></li> <li data-target="#myCarousel" data-slide-to="1"></li> <li data-target="#myCarousel" data-slide-to="2"></li> </ol> <div class="carousel-inner" role="listbox"> <div class="item active"> <img src="..." alt="..."> <div class="carousel-caption"> ... </div> </div> <div class="item"> <img src="..." alt="..."> <div class="carousel-caption"> ... </div> </div> <div class="item"> <img src="..." alt="..."> <div class="carousel-caption"> ... </div> </div> </div> <a class="left carousel-control" href="#myCarousel" role="button" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#myCarousel" role="button" data-slide="next"> <span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span> <span class="sr-only">Next</span> </a> </div> </div> </div> <style> .left-box, .right-box { width: 50%; height: 200px; position: absolute; top: 0; z-index: 1; } .left-box { left: 0; } .right-box { right: 0; } #myCarousel { margin: 0 auto; width: 100%; } .carousel-control.left { margin-left: -50px; } .carousel-control.right { margin-right: -50px; } </style> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值