国产沈阳熟女视频|骚视频97网站一区日本在线视频|久1社区在线视频|综合久久国外自产拍无码精品视频|亚洲欧美Tv先锋|综合五月天网址制服丝袜在线露脸|1024欧美手机视频我不卡|日本二区欧美亚洲国产|丁香五月婷婷五月|综合 另类 一区

<label id="5q2kl"></label>
<rt id="5q2kl"></rt>
  • <bdo id="5q2kl"></bdo>
    1. <span id="5q2kl"></span>
    2. 284292114@qq.com 中國站
      行業(yè)新聞 網(wǎng)站建設(shè) 網(wǎng)絡(luò)推廣 首頁>新聞中心>網(wǎng)站建設(shè)

      每行都要加一條橫線如何寫代碼來循環(huán)輸出。

      時間:2025-10-12   訪問量:0

      如圖所示,客戶出了一個很特殊的設(shè)計稿。

      每一行都下面都會有一條橫線。

      然后數(shù)據(jù)又是通過后臺來循環(huán)輸出的。

      這樣的設(shè)計要循環(huán)輸出單個數(shù)據(jù)的時候,就有點麻煩。

      同時,雖然一行三個,但是第一個居左,第二個居中,第三個居右。


      每行都要加一條橫線如何寫代碼來循環(huán)輸出。

      先看HTML生成:

       {hmcms:list num=10 order='sorting asc,id desc'}          
            <div class="caselist wow fadeIn">
              <a href="[list:link]" target="_blank">
                  <div class="case-box"><img src="[list:ico]"></div>
                  <div class="desc mt-4">
                      <div class="title text-center fs-16 fs-sm-18 mb-2 color333">[list:title]</div>
                      <div class="subtitle text-center fs-14 fs-sm-16">[list:subtitle]</div>
                  </div>
              </a>
            </div>
             {/hmcms:list}


      下面是CSS:

       .case-row {
            border-bottom: 2px solid #e6e6e6;   
            padding:20px 0 10px 0;
          }
          .caselist {
          display: inline-block;   /* 改為 inline-block,使其寬度為內(nèi)容寬度 */
          width: auto;
          text-align: center;
          margin: 50px 0 10px;     /* 你可以調(diào)整上下距離 */
          vertical-align: top;     /* 保證多行垂直對齊 */
          }
      
          .case-box {
           width: 300px;   
          }
      
          .case-box img {
             width:300px;
             height: 420px;
            object-fit: cover;
            display: block;
          }
          
          @media(max-width: 768px){
              .caselist { 
              display: block; 
              width: 100%; 
              } 
          }



      然后加上JS:

      <script>
      document.addEventListener('DOMContentLoaded', function () {
        const container = document.querySelector('.case-list-box');
        if (!container) return;
        // 保存原始 items(從模板輸出的 .caselist)
        const originalItems = Array.from(container.querySelectorAll('.caselist'));
      
        function rebuild() {
          const w = window.innerWidth;
          // 決定每行幾列(與你的斷點一致)
          const perRow = (w < 992) ? 2 : 3;
      
          // 清空容器并重建 rows
          container.innerHTML = '';
          for (let i = 0; i < originalItems.length; i += perRow) {
            const rowItems = originalItems.slice(i, i + perRow);
            const row = document.createElement('div');
            row.className = 'row case-row';
      
            // 為每個 item 創(chuàng)建 col 并根據(jù)位置設(shè)置對齊
            rowItems.forEach((item, idx) => {
              const col = document.createElement('div');
      
              // 基本的列類(在不同屏寬下控制列寬)
              // 注意:col-lg-4 在大屏?xí)r每列三等分;col-6 在窄屏?xí)r兩列
              col.className = 'col-6 col-md-6 col-lg-4 d-flex';
      
              // 決定該列內(nèi)部的水平對齊(使 .caselist 在 col 內(nèi)左/中/右)
              let alignClass = 'justify-content-center'; // 默認(rèn)居中
              if (perRow === 2) {
                // 兩列模式:都居中
                alignClass = 'justify-content-center';
              } else { // perRow === 3
                if (rowItems.length === 3) {
                  // 完整三列:第1 start,第2 center,第3 end
                  alignClass = (idx === 0) ? 'justify-content-start' :
                               (idx === 1) ? 'justify-content-center' : 'justify-content-end';
                } else if (rowItems.length === 2) {
                  // 大屏最后一行只有兩個:我們按 [start, center] 布局(通常比兩邊留白更協(xié)調(diào))
                  alignClass = (idx === 0) ? 'justify-content-start' : 'justify-content-center';
                } else {
                  // 只有一個元素(最后一行僅1個)——左對齊
                  alignClass = 'justify-content-start';
                }
              }
      
              // 把對齊類加上去
              col.className = col.className + ' ' + alignClass;
      
              // 把原始 item 節(jié)點插入(節(jié)點會被移動,不會復(fù)制)
              col.appendChild(item);
              row.appendChild(col);
            });
      
            container.appendChild(row);
          } // end for
        } // end rebuild
      
        // 初次構(gòu)建 & resize 監(jiān)聽(防抖)
        rebuild();
        let timer = null;
        window.addEventListener('resize', function () {
          clearTimeout(timer);
          timer = setTimeout(rebuild, 120);
        });
      });
      </script>



      服務(wù)咨詢
      1對1咨詢,專業(yè)客服為您解疑答惑
      聯(lián)系銷售
      15899750475
      在線咨詢
      聯(lián)系在線客服,為您解答所有的疑問