久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线

返回列表 發帖
查看: 147|回復: 6

修改dz論壇首頁板塊以tab標題樣式展示

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個


這是幾天前折騰出來的,分享一下。

默認文件下,多少年了,官方一直以展開整個板塊為默認方式。有時總感覺有點占用頁面空間,特別是板塊多的時候。

下面將分享由 Trae 解決的板塊展示問題。

- 1.創建了一個可水平滾動的標題欄,所有分區標題都集中在一行顯示;
- 2.實現了鼠標劃動懸停時切換顯示對應分區內容的功能;
- 3.添加了點擊標題跳轉到對應分區頁面的鏈接功能;
- 4.修復了頁面滾動、間距累積和底部間距過大等布局問題;
- 5.確保了右側邊欄的正常顯示和整體頁面布局的穩定性。

怎么操作呢。
打開論壇首頁文件,查到:
  • <div class="bm bmw {if $cat['forumcolumns']} flg{/if} cl">



默認文件約344行,找到它上面的這二行代碼:
  • <!--{loop $catlist $key $cat}-->
  •                         <!--{hook/index_catlist $cat['fid']}-->



接著在<!--{loop $catlist $key $cat}-->上面添加以下代碼:
  • <!-- 添加可滾動的分類tab容器 -->
  • <style type="text/css">
  • /* 分類標簽容器 */
  • .category-tabs-wrapper {
  •     width: 100%;
  •     overflow-x: auto;
  •     overflow-y: hidden;
  •     white-space: nowrap;
  •     -webkit-overflow-scrolling: touch;
  •     scroll-behavior: smooth;
  •     margin: 10px 0;
  •     padding: 5px 0;
  •     position: relative;
  •     clear: both;
  • }
  • /* 滾動條樣式 */
  • .category-tabs-wrapper::-webkit-scrollbar {
  •     height: 6px;
  • }
  • .category-tabs-wrapper::-webkit-scrollbar-track {
  •     background: #f1f1f1;
  •     border-radius: 3px;
  • }
  • .category-tabs-wrapper::-webkit-scrollbar-thumb {
  •     background: #888;
  •     border-radius: 3px;
  • }
  • .category-tabs-wrapper::-webkit-scrollbar-thumb:hover {
  •     background: #555;
  • }
  • /* 分類標簽樣式 */
  • .category-tab {
  •     display: inline-block;
  •     padding: 8px 12px;
  •     margin-right: 6px;
  •     background: #f5f5f5;
  •     border-radius: 3px;
  •     cursor: pointer;
  •     min-width: 80px;
  •     text-align: center;
  •     transition: all 0.2s ease;
  •     box-sizing: border-box;
  • }
  • .category-tab:hover {
  •     background: #e8e8e8;
  • }
  • .category-tab.active {
  •     background: #0066cc;
  •     color: white;
  • }
  • .category-tab a {
  •     text-decoration: none;
  •     font-weight: bold;
  •     display: block;
  •     font-size: 13px;
  • }
  • .category-tab.active a {
  •     color: white;
  • }
  • /* 內容容器 - 調整底部間距 */
  • .category-content-container {
  •     position: relative;
  •     margin: 15px 0 0 0; /* 只保留上邊距,移除下邊距 */
  •     clear: both;
  •     min-height: 200px; /* 減小最小高度 */
  •     padding-bottom: 0; /* 確保沒有底部內邊距 */
  • }
  • /* 確保右側邊欄正常顯示 */
  • #sd {
  •     float: right !important;
  •     display: block !important;
  • }
  • /* 確保內容區域位置穩定 */
  • .bm {
  •     position: relative;
  •     clear: both;
  •     margin-bottom: 0 !important; /* 強制移除底部邊距 */
  • }
  • #ct {
  •     position: relative;
  •     clear: both;
  • }
  • /* 修復底部間距問題的關鍵樣式 */
  • .category-content-container + * {
  •     margin-top: 10px !important; /* 限制內容容器后的元素上邊距 */
  • }
  • /* 移除可能的多余空元素 */
  • .category-content-container .bm {
  •     margin-bottom: 0 !important;
  • }
  • </style>
  • <!-- 分類標簽容器 - 添加鏈接 -->
  • <div class="category-tabs-wrapper" id="category-tabs">
  •     <!--{loop $catlist $key $cat}-->
  •         <div class="category-tab" id="tab_$cat[fid]">
  •             <!-- 添加真實鏈接,使用fid構建forumdisplay頁面URL -->
  •             <a href="forum.php?gid=$cat[fid]">$cat[name]</a>
  •         </div>
  •     <!--{/loop}-->
  • </div>
  • <!-- 固定的內容容器 -->
  • <div class="category-content-container" id="content-container">
  •     <!-- 這里將動態加載對應的分區內容 -->
  • </div>
  • <script type="text/javascript">
  • jQuery(function($) {
  •     // 計算每個tab的百分比寬度
  •     var tabs = $('.category-tab');
  •     var tabCount = tabs.length;
  •     // 為每個tab設置寬度
  •     tabs.each(function() {
  •         var percentWidth = Math.min(20, Math.max(10, 80 / tabCount));
  •         $(this).css('width', percentWidth + '%');
  •     });
  •     // 設置第一個tab為激活狀態
  •     tabs.first().addClass('active');
  •     // 獲取所有分區內容元素
  •     var categoryContents = $('div[id^="category_"]');
  •     // 保存原始分區內容到變量中,然后從DOM中移除
  •     var contentMap = {};
  •     categoryContents.each(function() {
  •         var id = $(this).attr('id');
  •         var fid = id.replace('category_', '');
  •         contentMap[fid] = $(this).html();
  •         $(this).remove(); // 從DOM中移除原始內容
  •     });
  •     // 初始顯示第一個分區內容
  •     if (tabs.length > 0) {
  •         var firstTabId = tabs.first().attr('id');
  •         var firstFid = firstTabId.replace('tab_', '');
  •         if (contentMap[firstFid]) {
  •             $('#content-container').html(contentMap[firstFid]);
  •             // 移除內容中可能導致間距過大的元素
  •             $('#content-container .bm').css('margin-bottom', '0');
  •         }
  •     }
  •     // 添加觸摸滑動支持
  •     var isScrolling = false;
  •     var startX, endX;
  •     $('#category-tabs').on('touchstart', function(e) {
  •         startX = e.originalEvent.touches[0].clientX;
  •         isScrolling = true;
  •     });
  •     $('#category-tabs').on('touchend', function(e) {
  •         endX = e.originalEvent.changedTouches[0].clientX;
  •         var diff = startX - endX;
  •         if (Math.abs(diff) > 50) {
  •             $(this).scrollLeft($(this).scrollLeft() + diff);
  •         }
  •         setTimeout(function() { isScrolling = false; }, 100);
  •     });
  •     // 鼠標懸停時切換分區內容 - 注意不阻止點擊事件
  •     tabs.hover(function() {
  •         if (isScrolling) return;
  •         // 更新激活狀態
  •         tabs.removeClass('active');
  •         $(this).addClass('active');
  •         // 獲取對應的分區ID
  •         var tabId = $(this).attr('id');
  •         var fid = tabId.replace('tab_', '');
  •         // 動態加載對應的分區內容到固定容器中
  •         if (contentMap[fid]) {
  •             $('#content-container').html(contentMap[fid]);
  •             // 移除內容中可能導致間距過大的元素
  •             $('#content-container .bm').css('margin-bottom', '0');
  •         }
  •     });
  •     // 為鏈接添加單獨的點擊處理,確保正常跳轉
  •     $('.category-tab a').on('click', function(e) {
  •         // 這里不需要阻止默認行為,允許鏈接正常跳轉
  •         // 用戶點擊時會跳轉到forumdisplay頁面
  •     });
  •     // 添加鍵盤左右鍵支持
  •     $(document).keydown(function(e) {
  •         if (e.keyCode == 37) {
  •             $('#category-tabs').scrollLeft($('#category-tabs').scrollLeft() - 200);
  •         } else if (e.keyCode == 39) {
  •             $('#category-tabs').scrollLeft($('#category-tabs').scrollLeft() + 200);
  •         }
  •     });
  • });
  • </script>



問題解決,當然,細節上,可能還需你自己調節,和美化一下,以適合你網站的風格。
回復

使用道具 舉報

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個
置頂 來自 7#
 樓主| 發表于 前天 19:37 | 只看Ta
本帖最后由 TaC 于 2025-10-17 23:56 編輯

重新更新一下樣式文件,一樓樣式引起了主題列表頁/主題列表/列表導航后面的最新主題及排序方式這一塊的下拉框錯位;會員組/站點管理組,普通用戶組這塊同樣是下拉框錯位,和框架晃動:
  1. .category-tabs-wrapper {width: 100%; overflow-x: auto; overflow-y: hidden; white-space: nowrap; -webkit-overflow-scrolling: touch; scroll-behavior: smooth; margin: 10px 0; padding: 5px 0; position: relative; clear: both;}
  2. /* 分類標簽樣式 */
  3. .category-tab { display: inline-block; padding: 7px 10px; margin-right: 20px; background:  linear-gradient(132deg,rgba(235,237,240,0.85) 9.65%,rgba(233,236,238,0.5) 58.96%,rgba(254,254,255,0.87) 86.15%);border:1px solid #fff; border-radius: 5px; cursor: pointer; min-width: 80px; text-align: center; transition: all 0.2s ease; box-sizing: border-box;}
  4. .category-tab:hover { background: #e8e8e8;}
  5. .category-tab.active { background: #1985DD; color: white;}
  6. .category-tab a { text-decoration: none; font-weight: bold; display: block; font-size: 13px;}
  7. .category-tab.active a { color: white;}
  8. /* 內容容器 - 調整底部間距 */
  9. .category-content-container { position: relative;margin: 15px 0 0 0;  clear: both; min-height: 150px;  padding-bottom: 0; }
  10. /* 確保內容區域位置穩定 */
  11. #fl .bm { position: relative; clear: both; margin-bottom: 0 !important; }
復制代碼

總算是找到問題所在了,奶的,糾結好多天,看來AI出錯,把簡單的問題搞得復雜。
一樓中,標簽.bm前面加上#fl,解決會員組這一塊的錯位問題。真沒想到一處引起其它頁面問題。


另外,樣式修改后,底部空隙過大,經瀏覽器查看,許多展開,收起默認占用空間。
在添加代碼的下面:
  1. <div class="bm bmw {if $cat['forumcolumns']} flg{/if} cl">
復制代碼
修改為:
  1. <div class="bm bmw {if $cat['forumcolumns']} flg{/if} ">
復制代碼

即去掉后面那個:cl
問題解決。
關于上面有關數據,請根據自己需求更改。


回復

使用道具 舉報

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個
沙發
 樓主| 發表于 5 天前 | 只看Ta
以上是在已經修改的一級分類下的板塊樣式的基礎上,修改而來。由 trae AI提供的原始數據。
至于,沒有前面工作,沒測試過。

重點是,在后臺/論壇,一級板塊下的橫排數目。請根據網站需求,應對更改和使用。
上面方法真的非常簡單,添加的位置就一個地方,一步到位,不用修改其它。但是要隱藏原來標題欄代碼,即 隱藏或刪除標題所在的diy標簽以內的所有代碼。


另外,便于日后管理,請駁離樣式代碼到目前使用的模板樣式文件中,其它放到論壇首頁文件里,即上面所說的文件位置里。
并做好注釋,便于日后程序升級時,方便查找,復制到升級的文件中。
回復

使用道具 舉報

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個
板凳
 樓主| 發表于 5 天前 | 只看Ta
本帖最后由 TaC 于 2025-10-14 17:01 編輯

注意,如果操作前,開啟了論壇首頁邊欄,并且,板塊下,還有DIY模塊(我原來板塊這里是刪除了的,使得的是邊欄掛件。升級x5,又整出來了)。在板塊效果出現后,可能右邊欄跑到下面(我在修改過的板塊邊欄添加了其它模塊,應該不是這個原因)。
并且無法移動,這時就在右邊重新DIY模塊,或添加代碼,再刪除以前的邊欄板塊。不然,當你DIY模塊后,下面的邊欄卻又跑到開始讓它去,卻不去的地方,模塊重復。
這些將根據你的模板現狀來操作,和調整。

所以,在決定操作前,要考慮好,整個首頁是否需要開啟邊欄,以免增加工作量。
至于原因,不詳,可能DIY模塊代碼放的位置不對,也懶得去找了。只要板塊效果達到,就可以了。
回復

使用道具 舉報

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個
地板
 樓主| 發表于 5 天前 | 只看Ta
本帖最后由 TaC 于 2025-10-14 17:05 編輯

下面是效果圖,不包括下面的板塊信息。只是紅框里的標題優化。



板塊信息這塊,更改的地方不是一個,所以,有需要的,再說了。因為它是在其它板塊代碼基礎上,修改來的,涉及到其它代碼,樣式。

回復

使用道具 舉報

120

主題

1001

回帖

1338

積分

已臻大成

貢獻
18 點
金幣
17 個
QQ
5#
發表于 4 天前 | 只看Ta
地址放出來看看效果
回復

使用道具 舉報

TaC

115

主題

728

回帖

891

積分

自成一派

貢獻
5 點
金幣
2 個
6#
 樓主| 發表于 3 天前 | 只看Ta
地址在這個回復帖子里,求助論壇的郵箱發信如何設置 - Discuz! X 教程 - Powered by Discuz! 我 不一一給了,免得人家說我打廣告
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

  • 關注公眾號
  • 有償服務微信
  • 有償服務QQ

手機版|小黑屋|Discuz! 官方交流社區 ( 皖ICP備16010102號 |皖公網安備34010302002376號 )|網站地圖|star

GMT+8, 2025-10-19 02:37 , Processed in 0.062693 second(s), 16 queries , Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

關燈 在本版發帖
有償服務QQ
有償服務微信
返回頂部
快速回復 返回頂部 返回列表
久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线
色偷偷88欧美精品久久久| 精品裸体舞一区二区三区| 亚洲国产高清一区二区三区| 成人午夜免费视频| 成人黄色在线网站| www.av精品| 91视频在线看| 欧美日韩三级电影在线| 女同一区二区| 亚洲国产精品视频一区| 亚洲人久久久| 另类国产ts人妖高潮视频| 葵司免费一区二区三区四区五区| 久久一区激情| 欧美撒尿777hd撒尿| 欧美日韩亚州综合| 日韩欧美一级二级| 国产日韩在线不卡| 亚洲视频 欧洲视频| 亚洲国产精品久久久久秋霞影院 | 模特精品在线| 欧美性xxxxxx少妇| 欧美一级欧美一级在线播放| 欧美成人精品3d动漫h| 国产精品欧美一级免费| 一区二区三区.www| 韩国欧美国产一区| 91浏览器在线视频| 午夜在线视频一区二区区别 | 亚洲国产成人av好男人在线观看| 五月天一区二区三区| 国产美女娇喘av呻吟久久| 91女神在线视频| 一区二区三区四区五区视频| 色八戒一区二区三区| 日韩欧美国产三级电影视频| 中文字幕亚洲成人| 日韩精品电影一区亚洲| 成人一区在线观看| 亚洲美女视频在线免费观看| 色噜噜狠狠色综合中国| 久久综合色之久久综合| 一区二区三区欧美视频| 精品一区二区三区在线播放视频| 97精品视频在线观看自产线路二| 亚洲开发第一视频在线播放| 欧美日韩黄色一区二区| 国产精品丝袜久久久久久app| 日韩精品一区第一页| 粉嫩在线一区二区三区视频| 中国女人久久久| 制服丝袜激情欧洲亚洲| 亚洲天天做日日做天天谢日日欢 | 亚洲一区在线电影| 成人美女视频在线看| 亚洲一区国产一区| 精品国一区二区三区| 首页综合国产亚洲丝袜| 91麻豆精品秘密| 欧美日韩在线播放三区四区| 国产精品欧美一区二区三区| 激情另类小说区图片区视频区| 国产自产精品| 日韩欧美亚洲一区二区| 亚洲www啪成人一区二区麻豆| 不卡的av电影| 欧美日韩亚洲综合在线 | 欧美性猛交xxxxxx富婆| 亚洲三级在线观看| 97精品久久久午夜一区二区三区| 在线影院国内精品| 一区二区三区91| 欧美午夜欧美| 日韩欧美中文字幕一区| 日本午夜精品视频在线观看| 伊人久久av导航| 精品国产免费一区二区三区四区| 日韩电影在线免费看| 亚洲久久一区| 最新久久zyz资源站| 99国产精品国产精品毛片| 欧美一区二区视频在线观看2020 | 欧美国产视频在线观看| 欧美一二区视频| 久草热8精品视频在线观看| 亚洲一区免费看| 一区二区中文字幕在线| 91香蕉视频黄| 欧美不卡视频一区| 国产精品一区二区黑丝| 欧美探花视频资源| 日韩精品免费视频人成| 久久裸体视频| 午夜欧美2019年伦理| 国产日韩欧美一区在线| 亚洲黄色免费网站| 制服诱惑一区二区| 自拍偷拍亚洲综合| 欧美日韩高清免费| 日本一区二区三区视频视频| 成人av在线资源网站| 日韩美女视频在线| 粉嫩久久99精品久久久久久夜| 91麻豆精品国产91久久久资源速度| 美女视频第一区二区三区免费观看网站 | 欧美国产激情| 国产精品国产精品国产专区不蜜 | 日本不卡免费在线视频| 色综合久久九月婷婷色综合| 天天综合天天综合色| 免费在线播放第一区高清av| 午夜欧美在线一二页| 午夜在线a亚洲v天堂网2018| 亚洲a一区二区| 久久久国产精品一区二区中文| 天天综合天天做天天综合| 欧日韩精品视频| 国产精品正在播放| 337p粉嫩大胆噜噜噜噜噜91av| 91在线丨porny丨国产| 欧美国产1区2区| 一区二区三区高清视频在线观看| 亚洲午夜羞羞片| 欧美三级视频在线| 成人午夜又粗又硬又大| 国产精品美女久久久久久久久久久| 亚洲人久久久| 久久精品免费看| 欧美一级黄色大片| 欧美精选一区| 一区二区三区波多野结衣在线观看| 玖玖玖国产精品| 国产成人综合在线播放| 久久精品一区二区三区四区| 99精品热视频只有精品10| 美女视频黄a大片欧美| 精品成人免费观看| 国产一级一区二区| 国产999精品久久久久久绿帽| 欧美激情一区二区| 久久精品一区二区国产| 成人国产精品免费观看动漫| 中文字幕一区二区不卡| 欧美性videosxxxxx| 91浏览器入口在线观看| 亚洲影视在线播放| 欧美一区二区久久久| 韩国免费一区| 韩国欧美一区二区| 亚洲欧洲国产日韩| 欧美一区二区网站| 国产一区91| 99麻豆久久久国产精品免费| 亚洲一二三专区| 精品免费国产一区二区三区四区| 国产亚洲欧美一区二区三区| 成人午夜伦理影院| 日日骚欧美日韩| 久久精品亚洲国产奇米99 | 午夜不卡av在线| 欧美经典一区二区| 日本韩国一区二区三区| 国产精品成人观看视频免费| 日本在线不卡一区| 国产精品久久久久aaaa樱花| 欧美自拍偷拍一区| 激情文学一区| 成人av免费在线| 另类小说视频一区二区| 中文字幕欧美一| 精品处破学生在线二十三| 欧美午夜精品一区二区蜜桃| 一本久道久久久| 欧美三区视频| 成人国产一区二区三区精品| 日韩在线观看一区二区| 日韩码欧中文字| 2021久久国产精品不只是精品| 欧美四级电影在线观看| 一本不卡影院| 伊伊综合在线| 91麻豆免费看片| www.日韩精品| 国产成人免费在线视频| 久久国产生活片100| 日韩在线一二三区| 亚洲宅男天堂在线观看无病毒 | eeuss国产一区二区三区| 国产精品白丝jk白祙喷水网站| 婷婷激情综合网| 一区二区三区在线免费观看 | 不卡av在线网| 成人av综合一区| 成人黄色小视频在线观看| 国产一区二区免费看| 裸体歌舞表演一区二区| 免费成人小视频| 欧美aⅴ一区二区三区视频| 亚洲3atv精品一区二区三区| 一区二区三区四区精品在线视频 |