You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

开发计算器时justify-content: space-between;布局未生效求助

问题解决:计算器布局justify-content: space-between不生效

你的问题核心是按钮没有设置基础尺寸——flex容器的justify-content: space-between需要子元素具备明确的尺寸,才能在元素间分配空白空间。现在你的按钮没有宽度、高度或弹性占比,导致布局没有呈现预期效果。

修复步骤

  • 给.calc-button添加弹性占比、内边距和高度,让按钮能填充容器空间
  • 给.double和.triple类设置对应弹性占比,实现按钮宽度差异
  • 补充交互样式(可选,提升使用体验)

修改后的完整CSS代码

html{
    box-sizing: border-box;
    height: 100%;
}

*,
*::before,
*::after{
    box-sizing: inherit;
    margin: 0;
    padding: 0;
}

body{
    align-items: center;
    background: linear-gradient(320deg, #eb92be, #ffef78, #63c9b4);
    display: flex;
    font-family: 'Dosis', sans-serif;
    font-display: swap;
    height: inherit;
    justify-content: center;
}

.wrapper{
    backdrop-filter: blur(5.5px);
    -webkit-backdrop-filter: blur(5.5px);
    border-radius: 16px;
    box-shadow: 0 4px 30px rgba(35, 35, 35, 0.1);
    color: #232323;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    background: rgba(255, 255, 255, 0.30);
    border: 1px solid rgba(255, 255, 255, 0.34);
    flex-basis: 400px;
    height: 540px;
    padding: 20px 25px;
}

.screen{
    backdrop-filter: blur(5.5px);
    -webkit-backdrop-filter: blur(5.5px);
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(255, 255, 255, 0.01);
    border-radius: 16px;
    box-shadow: 0 4px 30px rgba(35, 35, 35, 0.1);
    color: #232323;
    font-size: 35px;
    overflow: auto;
    padding: 20px;
    text-align: right;
    width: 326px;
}

.calc-button-row{
    display: flex;
    justify-content: space-between;
    margin: 5% 0;
    gap: 8px; /* 可选:添加固定间距,避免按钮紧贴 */
}

.calc-button{
    backdrop-filter: blur(5.5px);
    -webkit-backdrop-filter: blur(5.5px);
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 16px;
    box-shadow: 0 4px 30px rgba(35, 35, 35, 0.1);
    flex: 1; /* 让按钮均分容器宽度 */
    font-size: 24px;
    height: 65px;
    padding: 10px;
    cursor: pointer;
    transition: background 0.2s;
}

.calc-button:hover{
    background: rgba(255, 255, 255, 0.9);
}

.calc-button.double{
    flex: 2; /* 占2倍宽度 */
}

.calc-button.triple{
    flex: 3; /* 占3倍宽度 */
}

关键说明

  1. flex: 1让每个按钮在行内均分可用宽度,配合justify-content: space-between,按钮之间会自动产生均匀间距;也可以用gap设置固定间距,布局更可控
  2. .double和.triple的flex值对应按钮需要的宽度比例,实现教程中的布局效果
  3. 新增的高度、字体大小和hover样式让计算器更接近真实产品的交互体验

内容的提问来源于stack exchange,提问作者Vera

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 13:24:55