news 2026/7/14 3:55:52

CSS sticky 用错,导航栏不固定了!

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CSS sticky 用错,导航栏不固定了!
💓 博客主页:瑕疵的CSDN主页
📝 Gitee主页:瑕疵的gitee主页
⏩ 文章专栏:《热点资讯》

CSS sticky 用错?导航栏不固定了!手把手教你避坑

目录

昨天改页面,给导航栏加了position: sticky; top: 0;,结果滚动时它像喝醉了一样乱跳。气得我差点把键盘砸了。

问题报错
代码写得飞起:

.navbar{position:sticky;top:0;background:#2c3e50;height:50px;}

但一滚动,导航栏忽隐忽现。明明写了top: 0,为啥不固定在顶部?

核心根源
别怀疑CSS,是父容器没给它“站稳脚跟”。sticky需要父容器有明确高度overflow属性。
比如body默认高度是自动的,sticky找不到参照物,只能“飘”。
我试了10种方案,最后发现:父容器没高度,sticky就是个摆设。

解决代码
看错误和正确对比(关键在父容器):

/* 错误写法:父容器没高度,导航栏乱跳 */body{/* 这里没设高度!body高度自动,sticky找不到锚点 */}.navbar{position:sticky;top:0;/* 无效! */}
/* 正确写法:给父容器加高度 */body{height:100vh;/* 或 overflow: auto; *//* 关键!让父容器有明确高度 */}.navbar{position:sticky;top:0;/* 现在能固定了 */background:#2c3e50;height:50px;}

或者,如果父容器不是body:

/* 用其他容器时也得设高度 */.container{height:100%;/* 必须有! */overflow:auto;/* 选它更保险 */}.navbar{position:sticky;top:0;}

避坑总结

  1. 父容器必须有高度:body直接设height: 100vh,或给包裹层加height: 100%
  2. 别只写top: 0stickytop是相对父容器的,父容器没高度它就“没地儿站”。
  3. 测试要滚动:别只看初始状态。滚动时看导航栏是否贴顶,别信“应该能行”。
  4. overflow是救命稻草:加overflow: auto能解决高度问题,比硬设height更灵活。
  5. z-index别乱加:除非有重叠元素,否则会干扰sticky定位。

记住:sticky不是魔法。它需要父容器“撑住”,否则就是个纸老虎。
下次用前,先检查父容器高度。省下半夜debug的命。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 3:54:24

TPS61170与PIC18F45K50实现高效DC-DC升压转换方案

1. 项目背景与核心需求高电压DC-DC升压转换在工业自动化、医疗设备和新能源系统中有着广泛的应用需求。传统方案往往面临效率低、体积大或成本高的问题,而采用TPS61170搭配PIC18F45K50的方案,能够在2x2mm的极小封装内实现最高38V的输出电压转换&#xff…

作者头像 李华
网站建设 2026/7/14 3:54:22

Vim编辑器全套教程:嵌入式开发高效编码必备

Vim编辑器全套教程:嵌入式开发高效编码必备Linux下没有VS Code、没有Sublime,服务器上更没有图形界面。当你SSH到开发板调试,唯一的编辑器可能就是Vim。学会它,到哪里都能写代码。一、Vim是什么? Vim(Vi Im…

作者头像 李华
网站建设 2026/7/14 3:54:21

多维聚合实战:从pandas groupby到业务驱动的分析契约

1. 项目概述:为什么多维聚合不是“加个groupby”就能搞定的事我在银行数据平台组干了八年,从最早用SQL写几十行嵌套子查询做客户分层,到后来带团队搭实时风险计算引擎,踩过的坑比跑过的ETL任务还多。今天聊的这个主题——“Part 2…

作者头像 李华
网站建设 2026/7/14 3:49:22

Tushare接口文档:A股日线行情(daily)

官方文档:https://tushare.pro/document/2?doc_id27功能描述:获取股票日行情数据,包括高开低收、成交量、成交额等数据返回限量:单次请求最大返回6000行,足够获取某天所有A股上市公司的日行情。如果单次请求一支股票的…

作者头像 李华
网站建设 2026/7/14 3:48:24

Makefile快速上手笔记

一、为什么需要 Makefile? 在linux开发过程中,当项目只有一两个 .c 文件时,手动执行 gcc 命令并不麻烦: gcc main.c hello.c -o app但随着项目规模增长,源文件越来越多,手动编译变得难以维护,特…

作者头像 李华
网站建设 2026/7/14 3:47:02

数字绘画与AI绘画流程全解析:从工具配置到作品输出

这次我们来看一个名为"命运的双鱼-绘画过程"的技术项目。从标题来看,这应该是一个与数字绘画、AI绘画或绘画教程相关的技术内容,可能涉及绘画软件使用、AI绘画工具操作或绘画流程展示。对于这类绘画过程展示项目,我们需要重点关注几…

作者头像 李华