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

Codeigniter3网站日程模块输入短描述时CSS样式错乱问题

问题根因

这是Bootstrap栅格浮动未正确清除导致的典型布局错位,和描述字段长度本身无关:

  • 代码不符合Bootstrap栅格规范:所有带col-*类的栅格列,必须是.row类容器的直接子元素,当前代码中tab-pane容器下直接放置循环输出的col-md-12块,外层缺少对应的row约束,浮动元素脱离了正常文档流
  • 当描述文本较短时,单个日程项的整体高度由左侧窄列的日期、时间块决定,高度很小,下一个日程项的浮动列会漂移到上一行剩余的浮动空隙中,造成样式错乱;当描述文本较长时,右侧内容块高度足够撑起整行容器,刚好掩盖了浮动问题,所以显示正常。
修复方案

优先调整HTML结构,符合Bootstrap栅格使用规范,从根源规避浮动问题,修正后代码如下:

<div class="row">
    <!-- Tab panes -->
    <div class="tab-content">
        <div class="tab-pane active" id="upcoming-events" role="tabpanel">
            <!-- 所有栅格列统一放在row容器内 -->
            <div class="row">
            <?php foreach($data->result() as $row):?>
                <div class="col-md-12">
                    <div class="row">
                        <div class="col-md-2">
                            <div class="event-date">
                                <h4><?php echo date("d", strtotime($row->agenda_tanggal));?></h4>
                                <span><?php echo date("M Y", strtotime($row->agenda_tanggal));?></span>
                            </div>
                            <span class="event-time"><?php echo $row->agenda_waktu;?></span>
                        </div>
                        <div class="col-md-10">
                            <div class="event-heading">
                                <h3><?php echo $row->agenda_nama;?></h3>
                                <p><?php echo $row->agenda_deskripsi;?></p>
                            </div>
                        </div>
                        <!-- 分隔线放在当前行内部,避免被浮动影响 -->
                        <div class="col-md-12">
                            <hr class="event-underline">
                        </div>
                    </div>
                </div>
            <?php endforeach;?>

                <div class="col-md-12 text-center">
                    <?php echo $page;?>
                </div>
            </div>
        </div>
    </div>
</div>

如果不想大改现有结构,也可以直接给循环输出的每个col-md-12日程项加Bootstrap内置的clearfix类,强制清除两侧浮动,也能快速解决错位问题:

<div class="col-md-12 clearfix">
    <!-- 原有日程内部内容保持不变 -->
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 18:39:35