讲师中心 微信公众号
AI工具推荐 视频效率加速

如何让HTML页面部分内容可以滚动

老丽吖_6144

老丽吖_6144

发布时间:2026-10-28 10:04:05

|

593人浏览过

|

来源于php中文网

原创

HTML页面部分内容可滚动需设固定宽高+overflow: auto;Flex/Grid布局中子项防压缩用flex-shrink: 0或min-width: 0;固定头尾用flex: 1+overflow-y: auto;滚动定位遮挡用scroll-margin-top;iOS卡顿加-webkit-overflow-scrolling: touch。

如何让html页面部分内容可以滚动

让 HTML 页面“部分内容”可滚动,本质是限制容器尺寸并显式启用溢出处理——不是整个页面滚,而是某个 <div> 自己滚。 <h3>给容器设固定宽高 + overflow: auto</h3> <p>这是最基础、兼容性最好的方式。浏览器会自动判断内容是否溢出,只在需要时显示滚动条。</p> <ul> <li>必须设置 <code>width 和 height(或 max-height),仅用 min-height 不生效

  • overflow: auto 是首选:无溢出时不显示滚动条,比 scroll 更干净
  • 若只要垂直滚动,用 overflow-y: auto; overflow-x: hidden; 避免误触横向拖拽
  • 在 Flex 或 Grid 容器中,子项需设 flex-shrink: 0 或 min-width: 0 防止被压缩导致滚动失效
  • 用 flex 布局固定头尾,只让中间区域滚动

    常见于带固定 header/footer 的管理后台或仪表盘页面。关键在于让中间区域“撑不满父容器”,再赋予滚动能力。

    • 对 body 或根容器设 display: flex; flex-direction: column; height: 100vh;
    • header 和 footer 设固定高度(如 height: 60px)或 flex: 0 0 auto
    • main 区域用 flex: 1; overflow-y: auto; —— 这个 1 表示“占满剩余空间”,且允许内部溢出滚动
    • 注意:若 main 内部有 height: 100% 的子元素,可能撑满导致无法滚动,应改用 min-height: 0 解除约束

    滚动到底部时内容被 header 遮住?用 scroll-margin-top

    当调用 element.scrollIntoView() 滚到某个区块,结果被顶部 fixed 导航栏盖住,别手动算 offset——CSS 有原生解法。

    HTML Text Extract
    HTML Text Extract

    从HTML页面(URL、文件或标准输入)中提取主体内容文本,去除导航、页脚、广告和模板文本。可直接传递给readability_check或其他文本工具。

    下载

    立即学习“前端免费学习笔记(深入)”;

    • 给目标元素加 CSS:scroll-margin-top: 80px;(值等于 header 高度)
    • 这个偏移会自动参与 scrollIntoView() 的位置计算,无需 JS 干预
    • 响应式场景下,可用媒体查询动态调整:@media (max-width: 768px) { .section { scroll-margin-top: 60px; } }
    • 不支持该属性的老浏览器(如 IE)会忽略它,属于安全降级,不影响功能

    移动端滚动卡顿或没惯性?加 -webkit-overflow-scrolling

    iOS Safari 和部分安卓 WebView 默认对局部滚动做性能优化,导致拖拽迟滞、松手后不滑行。

    • 在可滚动容器上加:-webkit-overflow-scrolling: touch;
    • 必须配合 overflow-y: auto 才生效,单独写无效
    • 注意:该属性已废弃但仍在主流 iOS 版本中有效;现代方案倾向用 scroll-behavior: smooth + 软件渲染优化,但 touch 仍是解决惯性缺失最直接的手段
    • 若开启后出现闪烁或白屏,检查是否有 transform 或 will-change 与之冲突,可尝试加 backface-visibility: hidden

    真正容易被忽略的是渲染时机和盒模型干扰:比如在 DOMContentLoaded 时立即设置 scrollTop,但此时图片还没加载,scrollHeight 偏小;又比如 box-sizing: border-box 下 padding 被计入 height,却忘了预留滚动空间。这些细节不报错,但滚动行为会“差一点”。

    相关文章

    HTML速学教程(入门课程)
    HTML速学教程(入门课程)

    HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

    下载

    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

    热门AI工具

    更多
    超级麦吉

    一款通过数字员工协作完成调研、数据分析与文档制作的AI办公平台。

    WorkBuddy

    一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

    火山引擎

    火山引擎是一款面向企业的云计算与AI服务平台。

    蛙蛙写作

    一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

    豆包大模型

    豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

    AionClaw
    AionClaw Hot

    AionClaw是一款面向办公、创作和编程任务的AI桌面智能体。

    UpDream
    UpDream Hot

    一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

    DeepSeek

    DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

    PixTV
    PixTV Hot

    PixTV是一款面向AIGC内容创作的AI视频生成工具。

    相关专题

    更多
    html版权符号
    html版权符号

    html版权符号是“©”,可以在html源文件中直接输入或者从word中复制粘贴过来,php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

    6735

    2023.06.14

    html在线编辑器
    html在线编辑器

    html在线编辑器是用于在线编辑的工具,编辑的内容是基于HTML的文档。它经常被应用于留言板留言、论坛发贴、Blog编写日志或等需要用户输入普通HTML的地方,是Web应用的常用模块之一。php中文网为大家带来了html在线编辑器的相关教程、以及相关文章等内容,供大家免费下载使用。

    3732

    2023.06.21

    html网页制作
    html网页制作

    html网页制作是指使用超文本标记语言来设计和创建网页的过程,html是一种标记语言,它使用标记来描述文档结构和语义,并定义了网页中的各种元素和内容的呈现方式。本专题为大家提供html网页制作的相关的文章、下载、课程内容,供大家免费下载体验。

    3410

    2023.07.31

    html空格
    html空格

    html空格是一种用于在网页中添加间隔和对齐文本的特殊字符,被用于在网页中插入额外的空间,以改变元素之间的排列和对齐方式。本专题为大家提供html空格的相关的文章、下载、课程内容,供大家免费下载体验。

    3439

    2023.08.01

    html是什么
    html是什么

    HTML是一种标准标记语言,用于创建和呈现网页的结构和内容,是互联网发展的基石,为网页开发提供了丰富的功能和灵活性。本专题为大家提供html相关的各种文章、以及下载和课程。

    5059

    2023.08.11

    html字体大小怎么设置
    html字体大小怎么设置

    在网页设计中,字体大小的选择是至关重要的。合理的字体大小不仅可以提升网页的可读性,还能够影响用户对网页整体布局的感知。php中文网将介绍一些常用的方法和技巧,帮助您在HTML中设置合适的字体大小。

    3361

    2023.08.11

    html转txt
    html转txt

    html转txt的方法有使用文本编辑器、使用在线转换工具和使用Python编程。本专题为大家提供html转txt相关的文章、下载、课程内容,供大家免费下载体验。

    3189

    2023.08.31

    html文本框代码怎么写
    html文本框代码怎么写

    html文本框代码:1、单行文本框【<input type="text" style="height:..;width:..;" />】;2、多行文本框【textarea style=";height:;"></textare】。

    2768

    2023.09.01

    Vite 项目如何打包和部署
    Vite 项目如何打包和部署

    Vite项目打包部署专题汇集生产构建、产物预览、输出目录、资源路径、Nginx与GitHub Pages部署及常见白屏和路由404问题的已审核文章,帮助读者完成上线流程。

    20

    2026.10.28

    热门下载

    更多
    网站特效
    /
    网站源码
    /
    网站素材
    /
    前端模板

    精品课程

    更多
    相关推荐
    /
    热门推荐
    /
    最新课程
    AngularJS教程
    AngularJS教程

    共24课时 | 7.8万人学习

    国外Web开发全栈课程全集
    国外Web开发全栈课程全集

    共12课时 | 1.4万人学习

    PHP WEB 项目实战
    PHP WEB 项目实战

    共16课时 | 1.8万人学习

    关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
    php中文网:公益在线php培训,帮助PHP学习者快速成长!
    关注服务号
    PHP中文网订阅号
    每天精选资源文章推送

    Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn