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

Swal弹窗问题:文本居中异常与按钮均等尺寸调整求助

解决SweetAlert弹窗文本对齐与按钮尺寸问题

我来帮你搞定这个SweetAlert的样式问题!针对你遇到的文本左侧间隙过大、按钮尺寸不均的情况,我们可以通过调整CSS样式来完美解决:

1. 修复文本左侧间隙过大

默认的.swal-text带有左侧内边距(padding-left),这就是导致文本看起来偏右、左侧间隙大的核心原因。我们可以重置这个内边距,同时保持文本居中:

.swal-text {
  font-size: 20px;
  text-align: center;
  padding-left: 0; /* 移除默认左内边距 */
  padding-right: 0; /* 可选:统一左右内边距,让居中效果更对称 */
}

2. 让Cancel和OK按钮尺寸均等

SweetAlert的按钮容器默认是flex布局,我们可以利用flex属性让两个按钮平分可用空间,同时调整按钮的内边距和最小宽度来保证尺寸完全一致:

/* 让按钮容器使用flex布局,按钮平分空间 */
.swal-button-container {
  display: flex;
  gap: 10px; /* 按钮之间的间距,可根据需求调整 */
}

.swal-button {
  flex: 1; /* 每个按钮平分容器宽度 */
  min-width: 80px; /* 保证按钮不会太窄,适配不同文本长度 */
  padding: 8px 16px; /* 统一按钮内边距,让按钮高度一致 */
}

完整可运行代码示例

把这些样式整合到你的代码中,最终效果就会符合预期:

<html>
  <head>
    <style>
      .swal-text {
        font-size: 20px;
        text-align: center;
        padding-left: 0;
        padding-right: 0;
      }
      .swal-modal {
        width: 400px;
        height: 150px;
      }
      .swal-button-container {
        display: flex;
        gap: 10px;
      }
      .swal-button {
        flex: 1;
        min-width: 80px;
        padding: 8px 16px;
      }
    </style>
  </head>
  <body>
    <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
    <script>
      swal({ 
        text: "Are you sure ?", 
        buttons: ["Cancel", true], 
      });
    </script>
  </body>
</html>

这样调整后,文本会完全居中,左侧不会有多余间隙,两个按钮也会拥有均等的宽度和一致的尺寸啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 07:12:37