diff --git a/frontend/src/admin/AdminLayout.vue b/frontend/src/admin/AdminLayout.vue index ab56572..cbdff79 100644 --- a/frontend/src/admin/AdminLayout.vue +++ b/frontend/src/admin/AdminLayout.vue @@ -128,12 +128,12 @@ watch(() => route.path, () => loadCounts()) 查看前台 -
回车或失焦即生效;前台卡片与详情页头图会用到。
+{{ form.kind === 'short' ? '短文' : '长文' }}
diff --git a/frontend/src/styles.css b/frontend/src/styles.css index 2093117..97d3cf0 100644 --- a/frontend/src/styles.css +++ b/frontend/src/styles.css @@ -1161,6 +1161,14 @@ h4 { padding: 14px 18px; font-size: 12.5px; color: var(--admin-muted); + display: flex; + align-items: center; + justify-content: space-between; + gap: 12px; +} + +.admin-side .footer .meta { + min-width: 0; } .admin-side .footer .who { @@ -1868,7 +1876,7 @@ h4 { width: 100%; min-height: 460px; border: 1px solid var(--admin-line); - border-radius: 0 3px 3px 3px; + border-radius: 3px; background: var(--admin-card); padding: 18px 22px; font-family: var(--mono); @@ -1883,6 +1891,85 @@ h4 { border-color: var(--admin-accent); } +/* ---------- 工具栏:Markdown 模式 ---------- */ + +.toolbar { + display: flex; + flex-wrap: wrap; + align-items: center; + gap: 10px; + padding: 6px 8px; + border: 1px solid var(--admin-line); + border-bottom: 0; + border-radius: 3px 3px 0 0; + background: var(--admin-paper-sunken); +} + +.tb-group { + display: inline-flex; + align-items: center; + gap: 2px; +} + +.tb-group + .tb-group { + border-left: 1px solid var(--admin-line); + padding-left: 10px; + margin-left: 2px; +} + +.tb-label { + font-size: 11px; + letter-spacing: 0.06em; + color: var(--admin-muted); + margin-right: 4px; + text-transform: uppercase; +} + +.tb-btn { + width: 28px; + height: 28px; + border: 1px solid transparent; + border-radius: 3px; + background: transparent; + color: var(--admin-ink-soft); + cursor: pointer; + font-size: 12.5px; + display: inline-flex; + align-items: center; + justify-content: center; + padding: 0; + transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease; +} + +.tb-btn:hover { + background: var(--admin-card); + border-color: var(--admin-line); + color: var(--admin-ink); +} + +.tb-btn.italic { + font-style: italic; +} + +.tb-btn.mono { + font-family: var(--mono); + font-size: 11.5px; +} + +.tb-popover { + display: flex; + gap: 6px; + padding: 8px; + border: 1px solid var(--admin-line); + border-top: 0; + background: var(--admin-paper-sunken); +} + +.tb-popover .input { + flex: 1; + font-size: 13px; +} + .outline { position: sticky; top: 84px;