|
@@ -58,6 +58,7 @@ body {
|
|
|
display: flex;
|
|
|
gap: 20px;
|
|
|
max-height: calc(100vh - 150px);
|
|
|
+ height: calc(100vh - 150px); /* 添加固定高度 */
|
|
|
}
|
|
|
|
|
|
.tool-panel {
|
|
@@ -68,13 +69,13 @@ body {
|
|
|
border-radius: var(--radius);
|
|
|
box-shadow: var(--shadow);
|
|
|
overflow: hidden;
|
|
|
+ min-height: 0; /* 确保 flex 子元素可以正确滚动 */
|
|
|
}
|
|
|
|
|
|
.preview-panel {
|
|
|
flex: 1;
|
|
|
background-color: var(--card-bg);
|
|
|
border-radius: var(--radius);
|
|
|
- padding: 15px;
|
|
|
box-shadow: var(--shadow);
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
@@ -84,6 +85,8 @@ body {
|
|
|
.panel-tabs {
|
|
|
display: flex;
|
|
|
border-bottom: 1px solid var(--border-color);
|
|
|
+ height: 46px; /* 统一高度 */
|
|
|
+ flex-shrink: 0; /* 防止压缩 */
|
|
|
}
|
|
|
|
|
|
.panel-tab {
|
|
@@ -96,6 +99,18 @@ body {
|
|
|
color: var(--secondary-color);
|
|
|
cursor: pointer;
|
|
|
transition: var(--transition);
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 8px;
|
|
|
+}
|
|
|
+
|
|
|
+.panel-tab i {
|
|
|
+ font-size: 1rem;
|
|
|
+}
|
|
|
+
|
|
|
+.panel-tab span {
|
|
|
+ margin-top: 1px;
|
|
|
}
|
|
|
|
|
|
.panel-tab:hover {
|
|
@@ -107,21 +122,24 @@ body {
|
|
|
border-bottom: 2px solid var(--primary-color);
|
|
|
}
|
|
|
|
|
|
+.panel-tab.active i {
|
|
|
+ color: var(--primary-color);
|
|
|
+}
|
|
|
+
|
|
|
.panel-content {
|
|
|
flex: 1;
|
|
|
- overflow: hidden;
|
|
|
- position: relative;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ min-height: 0; /* 确保内容可以滚动 */
|
|
|
+ height: 100%;
|
|
|
}
|
|
|
|
|
|
.tab-content {
|
|
|
- position: absolute;
|
|
|
- top: 0;
|
|
|
- left: 0;
|
|
|
+ display: none;
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
padding: 15px;
|
|
|
overflow-y: auto;
|
|
|
- display: none;
|
|
|
}
|
|
|
|
|
|
.tab-content.active {
|
|
@@ -131,6 +149,8 @@ body {
|
|
|
/* 模板选择区域 */
|
|
|
.template-selection {
|
|
|
height: 100%;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
}
|
|
|
|
|
|
.template-categories {
|
|
@@ -138,6 +158,7 @@ body {
|
|
|
flex-wrap: wrap;
|
|
|
gap: 8px;
|
|
|
margin-bottom: 12px;
|
|
|
+ flex-shrink: 0; /* 防止压缩 */
|
|
|
}
|
|
|
|
|
|
.category-btn {
|
|
@@ -164,10 +185,11 @@ body {
|
|
|
display: grid;
|
|
|
grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
|
|
|
gap: 12px;
|
|
|
- height: calc(100% - 40px);
|
|
|
+ flex: 1;
|
|
|
overflow-y: auto;
|
|
|
padding: 5px;
|
|
|
- align-items: start; /* 确保项目从顶部对齐 */
|
|
|
+ align-items: start;
|
|
|
+ min-height: 0; /* 确保可以滚动 */
|
|
|
}
|
|
|
|
|
|
.template-item {
|
|
@@ -215,14 +237,13 @@ body {
|
|
|
/* 编辑区域 */
|
|
|
.editor-panel {
|
|
|
height: 100%;
|
|
|
+ overflow-y: auto;
|
|
|
}
|
|
|
|
|
|
.edit-form {
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
gap: 12px;
|
|
|
- max-height: 100%;
|
|
|
- overflow-y: auto;
|
|
|
padding-right: 5px;
|
|
|
}
|
|
|
|
|
@@ -260,9 +281,12 @@ body {
|
|
|
|
|
|
/* 高级选项区域 */
|
|
|
.advanced-options {
|
|
|
+ height: 100%;
|
|
|
+ overflow-y: auto;
|
|
|
display: flex;
|
|
|
flex-direction: column;
|
|
|
gap: 20px;
|
|
|
+ padding-right: 5px;
|
|
|
}
|
|
|
|
|
|
.option-group {
|
|
@@ -320,15 +344,16 @@ body {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
align-items: center;
|
|
|
- margin-bottom: 15px;
|
|
|
- padding-bottom: 10px;
|
|
|
+ height: 46px; /* 统一高度 */
|
|
|
border-bottom: 1px solid var(--border-color);
|
|
|
+ padding: 0 15px;
|
|
|
}
|
|
|
|
|
|
.preview-header h2 {
|
|
|
margin: 0;
|
|
|
color: var(--primary-color);
|
|
|
- font-size: 1.2rem;
|
|
|
+ font-size: 0.95rem; /* 统一字体大小 */
|
|
|
+ font-weight: 500; /* 统一字重 */
|
|
|
}
|
|
|
|
|
|
.zoom-controls {
|
|
@@ -345,6 +370,8 @@ body {
|
|
|
font-size: 13px;
|
|
|
cursor: pointer;
|
|
|
transition: var(--transition);
|
|
|
+ height: 28px; /* 固定按钮高度 */
|
|
|
+ line-height: 20px; /* 文字垂直居中 */
|
|
|
}
|
|
|
|
|
|
.zoom-btn:hover {
|
|
@@ -361,7 +388,6 @@ body {
|
|
|
flex: 1;
|
|
|
margin-bottom: 15px;
|
|
|
background-color: #f0f2f5;
|
|
|
- border-radius: var(--radius);
|
|
|
padding: 15px;
|
|
|
overflow: hidden;
|
|
|
position: relative;
|
|
@@ -467,7 +493,7 @@ body {
|
|
|
display: flex;
|
|
|
justify-content: center;
|
|
|
gap: 15px;
|
|
|
- margin-top: 10px;
|
|
|
+ margin-bottom: 10px;
|
|
|
}
|
|
|
|
|
|
.btn {
|