标题位置修正:顶栏即「XX反馈系统」,内容区只留图标+软件名

用户指出三处问题:
1. 最上面标题应显示「同步日历反馈系统」,而不是光秃秃的「同步日历」
2. 内容区那个重复的「同步日历反馈系统」不要再要了,
   那里只要「图标 + 同步日历」
3. 内容区下面多了一个裸露的 ?> 字符
4. 图标和标题文字都要再大一点

改动:
- 顶栏改为 fb_software_badge(sw, brand, fb_software_site_title(sw))
  图标 56px、文字 26px,成为页面唯一主标题
- 删除内容区的 h1.page-h1-sw(重复标题)
- 内容区改为 badge(lg):图标 40px + 文字 30px
- 清除 index.php 里多余的 ?> (上次编辑留下的残渣)
- badge 新增 brand 尺寸档与  参数,可覆盖显示文字
- 顶栏高度 72->84px 容纳更大的图标;窄屏仍有降级

验证:顶栏 title/文字正确、已无 page-h1-sw、
无裸露 ?>、内容区只显示「同步日历」、5 处图标全走 media.php
且均为有效 PNG、三个软件页与全部路由 200。
This commit is contained in:
2026-11-03 08:34:03 +08:00
parent 669ab9e43e
commit 82484298e4
6 changed files with 46 additions and 30 deletions
+13 -9
View File
@@ -326,19 +326,23 @@ function fb_software_icon($software) {
* 🔴 不要背景色:图标本身就是一张图/一个 emoji,再垫一个色块反而糊在一起。
* 直接「图标 + 文字」并排,识别度最高(用户 2026-11-03 明确要求)。
*
* @param array $sw 软件行
* @param string $size 'sm' | 'md' | 'lg'
* @param array $sw 软件行
* @param string $size 'sm' | 'md' | 'lg' | 'brand'(brand = 顶栏主标题)
* @param string $label 覆盖显示文字(默认=软件名)。顶栏用它传「XX 反馈系统」。
*/
function fb_software_badge($software, $size = 'md') {
function fb_software_badge($software, $size = 'md', $label = '') {
if (!is_array($software) || empty($software['name'])) { return ''; }
$icon = fb_software_icon($software);
$name = (string)$software['name'];
$name = $label !== '' ? (string)$label : (string)$software['name'];
/* md 用于页头副行,要跟上方 26px 的标题文字视觉匹配,所以比 sm 明显大一档;
* lg 只在大标题位置用(现在标题是纯文字,暂时没用到,留着备用)。 */
$px = ['sm' => 18, 'md' => 28, 'lg' => 40];
$fs = ['sm' => 14, 'md' => 19, 'lg' => 30];
$box = isset($px[$size]) ? $px[$size] : 28;
/* 尺寸档位:
* sm 软件选择器里的小标签
* md 一般位置
* lg 内容区「图标 + 软件名」
* brand 顶栏主标题,要显著大于正文,图标与「XX 反馈系统」一起放大 */
$px = ['sm' => 18, 'md' => 26, 'lg' => 38, 'brand' => 46];
$fs = ['sm' => 14, 'md' => 19, 'lg' => 28, 'brand' => 32];
$box = isset($px[$size]) ? $px[$size] : 26;
$fnt = isset($fs[$size]) ? $fs[$size] : 19;
/* 有上传的图标图片就用图片(管理员自己传的 logo),没有才用字符。