当页面产生滚动,位置超过侧边栏的顶部阈值后,侧边栏变为固定定位

需求:当页面产生滚动,位置超过侧边栏的 顶部阈值后,侧边栏变为固定定位。

解决方法:使用position: sticky 粘性定位

刚开始的想法是获取滚动距离,动态添加position: fixed,但是会出现动态添加fixed会导致宽度位置发生变化。最后选择了position: sticky

<div class="content-right">
                   <div class="right-fixed">
                        <div v-for="(item, index) in data.hotList" :key="index" class="content-right-item" @click="rightLink(item)">
                            <div class="num">{
   
   { index + 1 }}</div>
                            <div class="right-title">
                                {
   
   { item.collegeTitle }}
                            </div>
                        </div>
                    </div>
                </div>

.right-fixed {
        position: -webkit-sticky; /* 对于 Safari 的兼容性 */
        position: sticky;
        right: 0;
        top: 0;
    }

猜你喜欢

转载自blog.csdn.net/weixin_69670563/article/details/142823915