接口写好了吗 2022-08-03 11:02 采纳率: 80.2%
浏览 142
已结题

移动端如何实现上下固定,中间滚动自适应布局。

希望要一个这个效果。但是我调了半天就是不行。
有没有什么好得解决办法,我需要上下固定,不会滚动,中间滚动自适应高度。
我vue写得。我发现网上说的给html和body高度百分百,但是我给了都不生效。然后我用过上下固定定位,但是这样他们就脱离文档流了,中间确实可以通过margin来把他位置保持在中间,但是滚动条就会超出中间的内容区域,滚动到上下固定的模块内。有没有办法可以解决这种问题。
网上看了很多解决办法,甚至把别人代码直接复制下来就是不生效。

img

  • 写回答

5条回答 默认 最新

  • 崽崽的谷雨 2022-08-03 11:13
    关注

    你中间部分 肯定要 减去 头和 底部 的高度才行 。calc 可以 计算高度 calc(100vh - 100px)也行 。100就是 首和底部的距离 根据你的需求改变 。
    calc 符号 之间要有空格 要不然不生效 比如 :calc(100%-100px)

    html,body设置宽高100%也要有
    这个效果吗?

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            * {
                margin: 0;
                padding: 0;
            }
    
            html,
            body {
                width: 100%;
                height: 100%;
            }
    
            .box {
                width: 100%;
                height: 100%;
            }
    
            .header {
                width: 100%;
                height: 50px;
                background: red;
            }
    
            .content {
                width: 100%;
                height: calc(100% - 100px);
                overflow: auto;
            }
            .content p{
                height: 300px;
            }
    
            .footer {
                width: 100%;
                height: 50px;
                background: red;
            }
        </style>
    </head>
    
    <body>
        <div class="box">
            <div class="header"></div>
            <div class="content">
               <p>5555555555555555555555</p>
               <p>5555555555555555555555</p>
               <p>5555555555555555555555</p>
               <p>5555555555555555555555</p>
               <p>5555555555555555555555</p>
            </div>
            <div class="footer"></div>
        </div>
    </body>
    
    </html>
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(4条)

报告相同问题?

问题事件

  • 系统已结题 8月11日
  • 已采纳回答 8月3日
  • 创建了问题 8月3日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分