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

Laravel项目中Bootstrap的row无法在一行显示两列如何解决

解决方案

问题根源

Bootstrap自带的打印媒体查询默认会覆盖移动端以外的列宽样式,将所有列重置为100%宽度,同时你当前的布局写法混用了自定义flex属性和Bootstrap栅格系统,额外的justify-content-around会挤占列的可用宽度,最终导致两列换行。

具体修复步骤

  1. 修正布局结构
    将你原有代码中的行容器:
<div class="flex-row d-flex justify-content-around">

替换为标准Bootstrap栅格的row结构,移除多余的flex相关自定义类:

<div class="row gx-2">
<!-- gx-2用来控制两列之间的水平间距,可根据需要调整大小 -->

然后给两个子列的类加上打印专用的宽度控制,两处col-6都要同步修改:

<div class="col-6 col-print-6">
  1. 新增打印专属CSS
    在你的公共样式文件或者当前页面的style标签中加入以下代码,强制打印场景下的栅格布局生效:
@media print {
  /* 强制打印时row保持flex布局 */
  .row {
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
  }
  /* 定义打印场景下的6列宽度 */
  .col-print-6 {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    padding: 0 8px !important;
    box-sizing: border-box !important;
  }
  /* 防止表格内容溢出撑宽列 */
  table {
    table-layout: fixed !important;
    word-wrap: break-word !important;
    width: 100% !important;
  }
}
  1. 修复异常代码结构
  • 你现有代码中存在一个单独的</page>闭合标签,没有对应的<page>起始标签,这个异常会导致DOM结构解析错误、样式失效,请删除该标签或者补全对应的起始标签。
  • 检查你代码开头的@if条件是否完整,你当前贴出的代码只显示了@else和@endif,缺失的起始条件也可能导致页面结构渲染异常。

验证方法

修改完成后打开浏览器调试工具,切换到打印预览模式即可直接查看效果,无需实际打印,调整样式后刷新预览即可看到更新后的结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 03:36:02