From a62b108eb133aced4d3571e7907d8491b34435c4 Mon Sep 17 00:00:00 2001 From: xiaoqidun Date: Sat, 31 Oct 2026 13:02:45 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E7=95=8C=E9=9D=A2=E8=AE=BE=E8=AE=A1):=20?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E5=8F=91=E7=A5=A8=E9=97=B4=E8=B7=9D=E4=B8=8E?= =?UTF-8?q?=E6=8E=A7=E4=BB=B6=E6=9D=90=E8=B4=A8=E9=85=8D=E8=89=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/webui/ofdgo.css | 19 +++++++++++++++---- assets/webui/ofdgo.js | 6 +++--- 2 files changed, 18 insertions(+), 7 deletions(-) diff --git a/assets/webui/ofdgo.css b/assets/webui/ofdgo.css index 72f498c..f6c2ad2 100644 --- a/assets/webui/ofdgo.css +++ b/assets/webui/ofdgo.css @@ -1734,6 +1734,7 @@ button:not(:disabled):hover { .info-rows textarea, .gradient-stop-row input[type="number"], .structure-attribute > input, +.invoice-table input[type="text"], .print-options select, .form-row input[type="text"], .form-row input[type="password"], @@ -2395,6 +2396,14 @@ body[data-hide-meta] .meta-panel { margin-block: 8px; } +#settingsContext > .invoice-actions:only-child { + margin: 0; +} + +#invoiceTabContent > :last-child { + margin-bottom: 0; +} + .invoice-group-title { margin: 12px 0 8px; font-size: 1em; @@ -2449,10 +2458,8 @@ body[data-hide-meta] .meta-panel { width: 8em; } -.invoice-table input:not([type="radio"]) { - width: 100%; - min-width: 0; - box-sizing: border-box; +.invoice-table input[type="radio"] { + accent-color: var(--accent); } .invoice-dialog #settingsInvoiceXML { @@ -2553,6 +2560,10 @@ body[data-hide-meta] .meta-panel { overscroll-behavior: contain; } +.settings-dialog > form > .panel-tabs[hidden] + .settings-body { + padding-top: 0; +} + .settings-body:has(> #settingsContext:empty):has(> #settingsContent:empty) { display: none; } diff --git a/assets/webui/ofdgo.js b/assets/webui/ofdgo.js index f179cec..3777c48 100644 --- a/assets/webui/ofdgo.js +++ b/assets/webui/ofdgo.js @@ -7552,10 +7552,10 @@ function renderInvoiceSettings() { const choices = candidates.map(entry => [entry.key, entry.invoice.number || entry.invoice.code || `${entry.invoice.kind} · ${entry.index + 1}`]); if (invoicePanel.drafts.has("new")) choices.push(["new", "新建"]); if (choices.length) settingsSelect(context, "发票", "InvoiceEntry", choices, invoicePanel.key, value => { invoicePanel.key = value; loadDocumentSettings(); }); - const actions = document.createElement("div"); - actions.className = "invoice-actions"; - context.append(actions); if (state.editing) { + const actions = document.createElement("div"); + actions.className = "invoice-actions"; + context.append(actions); settingsButton("新建", newInvoiceDraft, false, "InvoiceNew", actions); settingsButton("导入", () => readInvoiceFile(async text => { const value = await newInvoiceDraft();