diff --git a/docutranslate/static/index.html b/docutranslate/static/index.html index 415183e..7b20238 100644 --- a/docutranslate/static/index.html +++ b/docutranslate/static/index.html @@ -16,30 +16,45 @@ background-color: var(--bs-body-bg); } - .main-container { - display: flex; - flex-direction: column; - height: 100vh; - padding-top: 1rem; - padding-bottom: 1rem; + /* --- 响应式布局修改 --- */ + + /* 桌面端 (lg及以上): 保持左右分栏固定高度布局 */ + @media (min-width: 992px) { + .main-container { + display: flex; + flex-direction: column; + height: 100vh; + padding-top: 1rem; + padding-bottom: 1rem; + } + + .settings-panel, .task-area { + height: calc(100vh - 2rem); + overflow-y: auto; + } + + .settings-panel { + padding-right: 15px; /* for scrollbar */ + } } - .settings-panel { - height: calc(100vh - 2rem); - overflow-y: auto; - padding-right: 15px; /* for scrollbar */ + /* 移动端 (lg以下): 布局变为自然文档流,可滚动 */ + @media (max-width: 991.98px) { + .main-container { + padding-top: 1rem; + padding-bottom: 1rem; + } + .settings-panel { + margin-bottom: 2rem; /* 在移动端堆叠时增加间距 */ + } } + /* --- 结束响应式布局修改 --- */ - .task-area { - height: calc(100vh - 2rem); - overflow-y: auto; - } .task-card { transition: all 0.3s ease-in-out; } - /* === 修改点: 为等待ID的状态添加样式 === */ .task-id-placeholder { color: var(--bs-secondary-color); font-style: italic; @@ -88,11 +103,13 @@ font-weight: bold; } - #printFrame, #translatedPreviewFrame { + #printFrame { border: none; width: 100%; + display: none; /* 保持隐藏 */ } + /* --- 预览侧边栏样式 --- */ #previewOffcanvas { --bs-offcanvas-width: 95vw; max-width: 1600px; @@ -100,14 +117,14 @@ .preview-split-container { display: flex; - flex-direction: row; + flex-direction: row; /* 桌面端默认为行 */ height: 100%; } .preview-pane-wrapper { display: flex; flex-direction: column; - overflow: hidden; /* Important for split.js */ + overflow: hidden; /* 对Split.js很重要 */ } .preview-pane-wrapper h6 { @@ -116,25 +133,42 @@ } .preview-pane-wrapper .preview-pane { - flex-grow: 1; /* Make the inner pane grow */ + flex-grow: 1; border: 1px solid var(--bs-border-color); border-radius: .375rem; - overflow: auto; + overflow: auto; } .gutter { background-color: var(--bs-tertiary-bg); - border-left: 1px solid var(--bs-border-color); - border-right: 1px solid var(--bs-border-color); + background-repeat: no-repeat; + background-position: 50%; } .gutter.gutter-horizontal { cursor: col-resize; + border-left: 1px solid var(--bs-border-color); + border-right: 1px solid var(--bs-border-color); + } + .gutter.gutter-vertical { + cursor: row-resize; + border-top: 1px solid var(--bs-border-color); + border-bottom: 1px solid var(--bs-border-color); } + /* 移动端预览: 上下分栏 */ + @media (max-width: 767.98px) { + .preview-split-container { + flex-direction: column; + } + .preview-pane-wrapper { + /* 当Split.js不活动时,让每个面板占据一半高度 */ + height: 50%; + } + } .preview-pane iframe, .preview-pane pre { width: 100%; - height: 95%; + height: 100%; /* 占满其容器 */ border: none; margin: 0; padding: 0; @@ -162,7 +196,7 @@
- 项目主页(欢迎star❤):
+ 项目主页 (欢迎star❤):
https://github.com/xunbu/docutranslate
@@ -388,7 +422,6 @@
等待提交...