build / build-push (push) Successful in 51s
以 default 为基座(文件最全:含事项库 service/guide 两模板),设计语言与配色取自 真实高校官网 CSS(浙理工 #0558A5+橙、信阳农林 #1C6E19+麦穗金、信阳师大 #008D3F+暖橙)。 三包均自带九段 home-blocks、:root 契约变量别名、中文防塌列三件套、真实实拍截图 (1920 无头截图缩样)。 - UniversitySkinContractTest(7 用例):九段 fragment/homeStyle 分发/防塌列/变量别名/ 层序/自有截图/主色色域(蓝或绿通道主导,粉紫禁入) - ThemeRegistryTest +哨兵:三包注册成功且主色与 default/scholar-blue 及彼此互异 - jade-normal 修复:news_grid 全宽封面变体把正文列压成 0 宽致 390px 溢出 47px, 增 .jn-feat-a--stack 纵向变体,复测 overflowX=0 - 门禁:ThemeContractIT 14 主题×7 路由全绿;全量 mvn test 393/393 绿
agri-forest · 农林绿
云海 CMS 皮肤包。fork 自 default(数据契约、模板 th:* 绑定与 default 完全一致),视觉层按农林院校门户语言全部重写,设计语言参考信阳农林学院官网(仅学语言,不复制实现)。
风格定位
- 气质词:庄重、质朴、农林学府。
- 配色:墨绿
#1C6E19主导(通栏导航/日期方块/页脚主底),加深端#14510F(页脚/标题条),提亮端#3FA43A(当前导航项/hover),麦穗金#C8A45C只做装饰线与角标(栏目标题下划线、导航当前项下杠、日期方块 hover 金线、置顶角标)。 - 结构:白色页头(左校徽+校名,右工具行:今日日期 + 校园直通车下拉 + 站内搜索)→ 墨绿通栏主导航(白字,当前栏目提亮绿底+金下杠,导航下方与 banner 无缝)→ 通栏轮播(左下墨绿标题条带金边)→ 首页区块 → 墨绿多列页脚(更深底条)。
- 工艺:小圆角 4px;间距刻度 4/8/12/16/24/32/48;字号阶梯 12/13/14/15/16/18/20/24/28/32;hover 过渡 0.2s ease;正文行高 1.75;无渐变堆砌、无粉紫、无玻璃拟态;图标一律内联 SVG。
参数取值建议(theme.json,13 项)
| key | cssVar | 默认 | 建议 |
|---|---|---|---|
| primary | --af-primary |
#1C6E19 |
主色。换季校庆可微调为 #1F7A1B,勿低于 #14510F 明度(导航白字对比) |
| primaryDark | --af-primary-dark |
#14510F |
页脚主底/轮播标题条。与 primary 保持同色相 1~2 档差 |
| primaryLight | --af-primary-light |
#3FA43A |
当前导航项/hover。需要更醒目可用 #4DB548,过亮会刺眼 |
| accent | --af-accent |
#C8A45C |
麦穗金装饰线/角标。庄重场合可降饱和为 #B8934A |
| navBg | --af-nav-bg |
#1C6E19 |
主导航底色。默认与 primary 一致;要"导航深一档"配 #14510F |
| footerBg | --af-footer-bg |
#14510F |
页脚主底;底条固定更深一档(--af-primary-deep,非参数) |
| text / textLight | --af-text / --af-text-light |
#2A3327 / #6C7A67 |
正文/次要文字,偏绿灰 |
| bg | --af-bg |
#F5F8F3 |
页面底色,带一点绿调的暖白 |
| cardBg | --af-card-bg |
#FFFFFF |
卡片底,建议保持纯白 |
| border | --af-border |
#DDE8DA |
边框/分隔线,绿灰调 |
| linkGreen | --af-link |
#277428 |
正文链接绿,介于主色深浅之间 |
| listLayout | —(select) | date |
列表页形态:date=46px 日期方块行(农林官网典型);plain=通栏行式(日期右置),信息密度更高 |
微调优先级:站点 theme_params(本表参数)→ 站点 custom_css → 本包 main.css(契约 §6)。
首页九段形态表(fragments/home-blocks.html)
站点配 home_layout 时首页正文由本包 fragment 渲染(换肤必须连正文一起换):
| fragment | 触发 | 形态 |
|---|---|---|
news_grid |
article_list + homeStyle=news_grid | 三图焦点(横排 3 封面卡)+ 双列要闻行式列表;支持站点背景带(news_bg_image,画在卡片之下) |
media_focus |
article_list + homeStyle=media_focus | 学术动态:双列密行 + 墨绿来源徽标 |
compact |
article_list + homeStyle=compact | 通知公告:46px 墨绿日期方块(日大号+年月小号),行 hover 出金线 |
image_wall |
article_list + homeStyle=image_wall | 四列图片墙(仅有封面条目),悬浮标题 |
card |
article_list 其他/未设 | 默认卡:头条图文(有封面则图文)+ 行式列表 |
ticker |
type=ticker | 要闻速递横条:墨绿底、金色分隔、单行不塌列 |
gallery |
type=gallery | 校园映像:居中标题+副题+四列图墙+悬浮标题 |
links |
type=links | 专题网站:4 列缩略卡(绿标题条+金下杠+圆徽),分组拉平 |
empty |
各形态 items 为空 | 空态「栏目暂无内容」(守卫包在外层 th:block,th:replace 优先级 100 先于 th:if 300) |
未知类型回落 themes/common 通用骨架;:root 已把 --af-* 别名到契约变量(--primary/--text/--card-bg/--border/--bg/--radius),兜底骨架与 themeVarsCss 换色可穿透。
纪律要点
- URL 一律
url.*生成,无硬编码绝对地址;非转义输出仅契约七处白名单。 - 中文防塌列:
.af-ticker-list{min-width:0;white-space:nowrap}、.af-ticker-item{flex:none;text-overflow:ellipsis}、.af-block-item-title{min-width:0;overflow:hidden;text-overflow:ellipsis}。 - 网格一律
minmax(0,1fr);≤768px 单列、导航横滚、子菜单静态平铺。 - 背景带层序:
.af-sec-bgz-index:0,其后.af-blockz-index:1。
截图说明
assets/screenshot.png 为按本皮肤设计语言绘制的门户结构示意图(非浏览器实拍)。管理端选择器如需实拍图,起服后截首页替换即可(记入遗留项)。