v0.6.7: narrow matches column so player filter stays visible.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
voson
2026-07-30 17:37:22 +08:00
co-authored by Cursor
parent 43e8409c0e
commit 11dbb73b5c
6 changed files with 35 additions and 18 deletions
+6
View File
@@ -12,6 +12,12 @@
- PC 选将 overlay 不再在顶栏头像下显示定位图标;仍保留网格「克/搭/补」与阵容分析条。 - PC 选将 overlay 不再在顶栏头像下显示定位图标;仍保留网格「克/搭/补」与阵容分析条。
## [0.6.7] - 2026-07-30
### Changed
- 比赛页主列由 1680px 收至 1200px,并按居中布局预留右侧筛选栏宽度,避免选手列表被裁切。
## [0.6.6] - 2026-07-30 ## [0.6.6] - 2026-07-30
### Changed ### Changed
+2 -2
View File
@@ -110,7 +110,7 @@ spacing:
content-read: 820px content-read: 820px
content-standard: 880px content-standard: 880px
content-wide: 1080px content-wide: 1080px
content-data: 1680px content-data: 1200px
components: components:
button-primary: button-primary:
backgroundColor: "{colors.primary}" backgroundColor: "{colors.primary}"
@@ -270,7 +270,7 @@ components:
| read | `min(820px, 92%)` | 版本 | | read | `min(820px, 92%)` | 版本 |
| standard | `min(880px, calc(100% - 48px))` | 排行、主播、机制 | | standard | `min(880px, calc(100% - 48px))` | 排行、主播、机制 |
| wide | `min(1080px, …)` | 走势 | | wide | `min(1080px, …)` | 走势 |
| data | `min(1680px, …)` | 比赛 | | data | `min(1200px, …)`(居中时两侧预留侧栏) | 比赛 |
间距尺度:4 / 8 / 12 / 16 / 24 / 32 / 48px。页内 gutter 默认 16px;列表页上下 `page-y` 28px。侧栏与主列间距 20px。 间距尺度:4 / 8 / 12 / 16 / 24 / 32 / 48px。页内 gutter 默认 16px;列表页上下 `page-y` 28px。侧栏与主列间距 20px。
+1 -1
View File
@@ -56,7 +56,7 @@ from shared.paths import (
from seo_prerender import DEFAULT_SITE_ORIGIN, write_seo_bundle from seo_prerender import DEFAULT_SITE_ORIGIN, write_seo_bundle
from serve_relations import WEB_DIR, build_payload from serve_relations import WEB_DIR, build_payload
SITE_VERSION = "0.6.6" SITE_VERSION = "0.6.7"
DEFAULT_OSS_BASE = "https://climperor.oss-cn-shanghai.aliyuncs.com" DEFAULT_OSS_BASE = "https://climperor.oss-cn-shanghai.aliyuncs.com"
+1 -1
View File
@@ -1,5 +1,5 @@
/* Local defaults; production export overwrites via export_relations_site.py. */ /* Local defaults; production export overwrites via export_relations_site.py. */
var SITE_VERSION = "0.6.6"; var SITE_VERSION = "0.6.7";
var SITE_ORIGIN = ""; var SITE_ORIGIN = "";
var ABILITY_VIDEO_BASE = ""; var ABILITY_VIDEO_BASE = "";
var STATIC_ASSET_BASE = ""; var STATIC_ASSET_BASE = "";
+5 -5
View File
@@ -43,8 +43,8 @@
} }
</script> </script>
<link rel="icon" href="/ui-icon/dota2_logo.png" type="image/png" /> <link rel="icon" href="/ui-icon/dota2_logo.png" type="image/png" />
<link rel="stylesheet" href="/style.css?v=0.6.6" /> <link rel="stylesheet" href="/style.css?v=0.6.7" />
<script src="/mobile-gate.js?v=0.6.6"></script> <script src="/mobile-gate.js?v=0.6.7"></script>
</head> </head>
<body> <body>
<h1 class="sr-only">DOTA2 上分帝</h1> <h1 class="sr-only">DOTA2 上分帝</h1>
@@ -233,8 +233,8 @@
</div> </div>
<footer class="heroes-site-foot" id="heroes-site-foot" aria-hidden="true"></footer> <footer class="heroes-site-foot" id="heroes-site-foot" aria-hidden="true"></footer>
<script src="/config.js?v=0.6.6"></script> <script src="/config.js?v=0.6.7"></script>
<script src="/router.js?v=0.6.6"></script> <script src="/router.js?v=0.6.7"></script>
<script src="/app.js?v=0.6.6"></script> <script src="/app.js?v=0.6.7"></script>
</body> </body>
</html> </html>
+20 -9
View File
@@ -62,7 +62,8 @@
--content-read: 820px; --content-read: 820px;
--content-standard: 880px; --content-standard: 880px;
--content-wide: 1080px; --content-wide: 1080px;
--content-data: 1680px; /* Matches list + right filter aside (centered column must leave aside room). */
--content-data: 1200px;
--aside-gap: 20px; --aside-gap: 20px;
--focus-ring: 2px solid var(--sel); --focus-ring: 2px solid var(--sel);
} }
@@ -2256,6 +2257,11 @@ a.match-player-name:hover {
gap: 5px; gap: 5px;
align-items: center; align-items: center;
} }
@media (max-width: 1200px) {
.match-skills {
flex-wrap: wrap;
}
}
.match-inv { .match-inv {
display: flex; display: flex;
flex-direction: column; flex-direction: column;
@@ -2982,8 +2988,8 @@ body:has(#items-view:not(.hidden)) {
} }
.matches-board .rankings-center-wrap.matches-center-wrap { .matches-board .rankings-center-wrap.matches-center-wrap {
align-items: stretch; align-items: stretch;
/* Fixed column width so cards align; ~lv30 skill row + a little slack. */ /* Centered column + absolute aside: reserve ~aside(260)+gap on BOTH sides. */
width: min(var(--content-data), 100%, calc(100vw - 280px)); width: min(var(--content-data), calc(100% - 48px), calc(100vw - 560px));
} }
.matches-board .match-list, .matches-board .match-list,
.matches-board .match-card { .matches-board .match-card {
@@ -2993,14 +2999,13 @@ body:has(#items-view:not(.hidden)) {
} }
.matches-board .match-skills { .matches-board .match-skills {
max-width: 100%; max-width: 100%;
} flex-wrap: wrap;
@media (max-width: 1200px) {
.match-skills {
flex-wrap: wrap;
}
} }
.matches-board .rankings-aside { .matches-board .rankings-aside {
align-items: stretch; align-items: stretch;
width: max-content;
min-width: 200px;
max-width: min(260px, 28vw);
} }
.matches-origins, .matches-origins,
.matches-players { .matches-players {
@@ -3012,6 +3017,9 @@ body:has(#items-view:not(.hidden)) {
.matches-board .rankings-aside .rankings-region-btn { .matches-board .rankings-aside .rankings-region-btn {
width: 100%; width: 100%;
box-sizing: border-box; box-sizing: border-box;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
} }
.matches-board .match-list { .matches-board .match-list {
gap: 12px; gap: 12px;
@@ -3148,7 +3156,10 @@ body:has(#items-view:not(.hidden)) {
width: min(640px, 94%); width: min(640px, 94%);
} }
.matches-board .rankings-center-wrap.matches-center-wrap { .matches-board .rankings-center-wrap.matches-center-wrap {
width: min(1680px, 94%); width: min(var(--content-data), 94%);
}
.matches-board .rankings-aside {
max-width: none;
} }
.rankings-aside { .rankings-aside {
position: static; position: static;