diff --git a/package.json b/package.json
index 6ce5c683..f9add7f1 100644
--- a/package.json
+++ b/package.json
@@ -66,6 +66,7 @@
"plop": "^4.0.1",
"postcss": "^8.4.40",
"postcss-html": "^1.7.0",
+ "postcss-nested": "^6.2.0",
"sass": "^1.77.8",
"simple-git-hooks": "^2.11.1",
"stylelint": "^16.8.1",
diff --git a/plop-templates/component/index.hbs b/plop-templates/component/index.hbs
index 69f75951..1d62a025 100644
--- a/plop-templates/component/index.hbs
+++ b/plop-templates/component/index.hbs
@@ -12,6 +12,6 @@ defineOptions({
-
diff --git a/plop-templates/page/index.hbs b/plop-templates/page/index.hbs
index e9223826..c5fb0215 100644
--- a/plop-templates/page/index.hbs
+++ b/plop-templates/page/index.hbs
@@ -10,6 +10,6 @@ defineOptions({
-
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index eb4c9346..eb8c36b8 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -147,6 +147,9 @@ importers:
postcss-html:
specifier: ^1.7.0
version: 1.7.0
+ postcss-nested:
+ specifier: ^6.2.0
+ version: 6.2.0(postcss@8.4.40)
sass:
specifier: ^1.77.8
version: 1.77.8
@@ -4357,6 +4360,12 @@ packages:
postcss-media-query-parser@0.2.3:
resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==}
+ postcss-nested@6.2.0:
+ resolution: {integrity: sha512-HQbt28KulC5AJzG+cZtj9kvKB93CFCdLvog1WFLf1D+xmMvPGlBstkpTEZfK5+AN9hfJocyBFCNiqyS48bpgzQ==}
+ engines: {node: '>=12.0'}
+ peerDependencies:
+ postcss: ^8.2.14
+
postcss-prefix-selector@1.16.0:
resolution: {integrity: sha512-rdVMIi7Q4B0XbXqNUEI+Z4E+pueiu/CS5E6vRCQommzdQ/sgsS4dK42U7GX8oJR+TJOtT+Qv3GkNo6iijUMp3Q==}
peerDependencies:
@@ -10180,6 +10189,11 @@ snapshots:
postcss-media-query-parser@0.2.3: {}
+ postcss-nested@6.2.0(postcss@8.4.40):
+ dependencies:
+ postcss: 8.4.40
+ postcss-selector-parser: 6.1.1
+
postcss-prefix-selector@1.16.0(postcss@5.2.18):
dependencies:
postcss: 5.2.18
diff --git a/postcss.config.js b/postcss.config.js
index b6dc0349..f20659c1 100644
--- a/postcss.config.js
+++ b/postcss.config.js
@@ -1,5 +1,6 @@
export default {
plugins: {
- autoprefixer: {},
+ 'autoprefixer': {},
+ 'postcss-nested': {},
},
}
diff --git a/src/assets/styles/globals.scss b/src/assets/styles/globals.css
similarity index 78%
rename from src/assets/styles/globals.scss
rename to src/assets/styles/globals.css
index faa1feba..56680c57 100644
--- a/src/assets/styles/globals.scss
+++ b/src/assets/styles/globals.css
@@ -1,22 +1,27 @@
-// 页面布局 CSS 变量
+/* 页面布局 CSS 变量 */
:root {
- // 头部高度
+ /* 头部高度 */
--g-header-height: 60px;
- // 侧边栏宽度
+
+ /* 侧边栏宽度 */
--g-main-sidebar-width: 80px;
--g-sub-sidebar-width: 220px;
--g-sub-sidebar-collapse-width: 64px;
- // 侧边栏Logo高度
+
+ /* 侧边栏Logo高度 */
--g-sidebar-logo-height: 50px;
- // 顶栏高度
+
+ /* 顶栏高度 */
--g-topbar-height: 50px;
- // 窗口高度(仅在窗口预览时使用)
+
+ /* 窗口高度(仅在窗口预览时使用) */
--g-window-height: 800px;
- // 窗口预览缩放系数
+
+ /* 窗口预览缩放系数 */
--g-window-perview-scale: 0.5;
}
-// 明暗模式 CSS 变量
+/* 明暗模式 CSS 变量 */
/* stylelint-disable-next-line no-duplicate-selectors */
:root {
--g-box-shadow-color: rgb(0 0 0 / 12%);
@@ -89,7 +94,7 @@ body {
box-sizing: inherit;
}
-// 右侧内容区针对fixed元素,有横向铺满的需求,可在fixed元素上设置 [data-fixed-calc-width]
+/* 右侧内容区针对fixed元素,有横向铺满的需求,可在fixed元素上设置 [data-fixed-calc-width] */
[data-fixed-calc-width] {
position: fixed;
right: 0;
@@ -98,7 +103,7 @@ body {
transform: translateX(-50%) translateX(calc(var(--g-main-sidebar-actual-width) / 2)) translateX(calc(var(--g-sub-sidebar-actual-width) / 2));
}
-// textarea 字体跟随系统
+/* textarea 字体跟随系统 */
textarea {
font-family: inherit;
}
@@ -106,12 +111,12 @@ textarea {
/* Overrides Floating Vue */
.v-popper--theme-dropdown,
.v-popper--theme-tooltip {
- --at-apply: inline-flex;
+ --uno: inline-flex;
}
.v-popper--theme-dropdown .v-popper__inner,
.v-popper--theme-tooltip .v-popper__inner {
- --at-apply: bg-white dark-bg-stone-8 text-dark dark-text-white rounded shadow ring-1 ring-gray-200 dark-ring-gray-800 border border-solid border-stone/20 text-xs font-normal;
+ --uno: bg-white dark-bg-stone-8 text-dark dark-text-white rounded shadow ring-1 ring-gray-200 dark-ring-gray-800 border border-solid border-stone/20 text-xs font-normal;
box-shadow: 0 6px 30px rgb(0 0 0 / 10%);
}
@@ -120,12 +125,12 @@ textarea {
.v-popper--theme-dropdown .v-popper__arrow-inner {
visibility: visible;
- --at-apply: border-white dark-border-stone-8;
+ --uno: border-white dark-border-stone-8;
}
.v-popper--theme-tooltip .v-popper__arrow-outer,
.v-popper--theme-dropdown .v-popper__arrow-outer {
- --at-apply: border-stone/20;
+ --uno: border-stone/20;
}
.v-popper--theme-tooltip.v-popper--shown,
diff --git a/src/components/ComponentBasicExampleAlert/index.vue b/src/components/ComponentBasicExampleAlert/index.vue
index dfcfb97a..35f8bc39 100644
--- a/src/components/ComponentBasicExampleAlert/index.vue
+++ b/src/components/ComponentBasicExampleAlert/index.vue
@@ -10,7 +10,7 @@
-
diff --git a/src/views/components/Dashboard/Empty/index.vue b/src/views/components/Dashboard/Empty/index.vue
index bfb1e414..cad201b5 100644
--- a/src/views/components/Dashboard/Empty/index.vue
+++ b/src/views/components/Dashboard/Empty/index.vue
@@ -194,7 +194,7 @@ function open(url: string) {
-
-
diff --git a/src/views/windows/ComponentExtendExamplePcas/index.vue b/src/views/windows/ComponentExtendExamplePcas/index.vue
index 1356b89b..5f8c9c3a 100644
--- a/src/views/windows/ComponentExtendExamplePcas/index.vue
+++ b/src/views/windows/ComponentExtendExamplePcas/index.vue
@@ -64,7 +64,3 @@ function submitForm() {
-
-
diff --git a/src/views/windows/ComponentExtendExampleSearchbar/index.vue b/src/views/windows/ComponentExtendExampleSearchbar/index.vue
index ba21b9fa..c37071ab 100644
--- a/src/views/windows/ComponentExtendExampleSearchbar/index.vue
+++ b/src/views/windows/ComponentExtendExampleSearchbar/index.vue
@@ -411,7 +411,7 @@ function onToggle(fold: boolean) {
-