diff --git a/build/vite/plugin/theme.ts b/build/vite/plugin/theme.ts
index f8d968ae7d102f0718a4f9ca2a343d429b708013..0fff071048393ffb915472edf67e49e0c1f79834 100644
--- a/build/vite/plugin/theme.ts
+++ b/build/vite/plugin/theme.ts
@@ -35,10 +35,11 @@ export function configThemePlugin(isBuild: boolean): Plugin[] {
return s;
case '.ant-select-item-option-selected:not(.ant-select-item-option-disabled)':
return s;
- case '.ant-btn-primary':
- case '.ant-btn:hover':
- case '.ant-btn-primary:hover':
- return s;
+ default:
+ if (s.indexOf('.ant-btn') >= -1) {
+ // 按钮被重新定制过,需要过滤掉class防止覆盖
+ return s;
+ }
}
return s.startsWith('[data-theme') ? s : `[data-theme] ${s}`;
},
diff --git a/src/design/ant/btn.less b/src/design/ant/btn.less
index b85da514168cb81dc217326de8d604bbb7b31d34..2659f39711509e94b14e420a73dabe165e02a79c 100644
--- a/src/design/ant/btn.less
+++ b/src/design/ant/btn.less
@@ -29,18 +29,23 @@
color: @white;
background-color: @button-primary-hover-color;
}
-
- &[disabled],
- &[disabled]:hover {
- color: fade(@button-cancel-color, 40%);
- background-color: fade(@button-cancel-bg-color, 40%);
- }
+ //
+ //&[disabled],
+ //&[disabled]:hover {
+ // color: fade(@button-cancel-color, 40%) !important;
+ // background-color: fade(@button-cancel-bg-color, 40%) !important;
+ // border-color: fade(@button-cancel-border-color, 40%) !important;
+ //}
}
- &-primary:not(&-background-ghost) {
- border-width: 0;
+ &-primary:not(&-background-ghost):not([disabled]) {
+ color: @white;
}
+ //&-primary:not(&-background-ghost) {
+ // border-width: 0;
+ //}
+
&-default {
color: @button-cancel-color;
background-color: @button-cancel-bg-color;
@@ -52,13 +57,13 @@
background-color: @button-cancel-hover-bg-color;
border-color: @button-cancel-hover-border-color;
}
-
- &[disabled],
- &[disabled]:hover {
- color: fade(@button-cancel-color, 40%);
- background: fade(@button-cancel-bg-color, 40%);
- border-color: fade(@button-cancel-border-color, 40%);
- }
+ //
+ //&[disabled],
+ //&[disabled]:hover {
+ // color: fade(@button-cancel-color, 40%) !important;
+ // background: fade(@button-cancel-bg-color, 40%) !important;
+ // border-color: fade(@button-cancel-border-color, 40%) !important;
+ //}
}
[data-theme='light'] &.ant-btn-link.is-disabled {
@@ -105,11 +110,11 @@
}
}
- &-success:not(.ant-btn-link) {
+ &-success:not(.ant-btn-link, .is-disabled) {
color: @white;
background-color: @button-success-color;
border-color: @button-success-color;
- border-width: 0;
+ //border-width: 0;
&:hover,
&:focus {
@@ -123,13 +128,12 @@
border-color: @button-success-active-color;
}
- &[disabled],
- &[disabled]:hover {
- color: @white;
- background-color: fade(@button-success-color, 40%);
- // background-color: @button-success-disabled-color;
- border-color: fade(@button-success-color, 40%);
- }
+ //&[disabled],
+ //&[disabled]:hover {
+ // color: @white;
+ // background-color: fade(@button-success-color, 40%);
+ // border-color: fade(@button-success-color, 40%);
+ //}
}
&-warning.ant-btn-link:not([disabled='disabled']) {
@@ -146,11 +150,11 @@
}
}
- &-warning:not(.ant-btn-link) {
+ &-warning:not(.ant-btn-link, .is-disabled) {
color: @white;
background-color: @button-warn-color;
border-color: @button-warn-color;
- border-width: 0;
+ //border-width: 0;
&:hover,
&:focus {
@@ -164,15 +168,12 @@
border-color: @button-warn-active-color;
}
- &[disabled],
- &[disabled]:hover {
- color: @white;
- background-color: fade(@button-warn-color, 40%);
- border-color: fade(@button-warn-color, 40%);
-
- // background-color: @button-warn-disabled-color;
- // border-color: @button-warn-disabled-color ;
- }
+ //&[disabled],
+ //&[disabled]:hover {
+ // color: @white;
+ // background-color: fade(@button-warn-color, 40%);
+ // border-color: fade(@button-warn-color, 40%);
+ //}
}
&-error.ant-btn-link:not([disabled='disabled']) {
@@ -189,11 +190,11 @@
}
}
- &-error:not(.ant-btn-link) {
+ &-error:not(.ant-btn-link, .is-disabled) {
color: @white;
background-color: @button-error-color;
border-color: @button-error-color;
- border-width: 0;
+ //border-width: 0;
&:hover,
&:focus {
@@ -207,22 +208,29 @@
border-color: @button-error-active-color;
}
- &[disabled],
- &[disabled]:hover {
- color: @white;
- background-color: fade(@button-error-color, 40%);
- border-color: fade(@button-error-color, 40%);
- }
+ //&[disabled],
+ //&[disabled]:hover {
+ // color: @white;
+ // background-color: fade(@button-error-color, 40%);
+ // border-color: fade(@button-error-color, 40%);
+ //}
}
&-background-ghost {
border-width: 1px;
+ background-color: transparent !important;
+
+ &[disabled],
+ &[disabled]:hover {
+ color: fade(@white, 40%) !important;
+ background-color: transparent !important;
+ border-color: fade(@white, 40%) !important;
+ }
}
&-dashed&-background-ghost,
&-default&-background-ghost {
color: @button-ghost-color;
- background-color: transparent;
border-color: @button-ghost-color;
&:hover,
@@ -238,8 +246,8 @@
&[disabled],
&[disabled]:hover {
- color: fade(@white, 40%);
- border-color: fade(@white, 40%);
+ color: fade(@white, 40%) !important;
+ border-color: fade(@white, 40%) !important;
}
}
@@ -261,7 +269,7 @@
}
}
- &-background-ghost&-warn:not(.ant-btn-link) {
+ &-background-ghost&-warning:not(.ant-btn-link) {
color: @button-warn-color;
background-color: transparent;
border-color: @button-warn-color;
diff --git a/src/views/demo/comp/button/index.vue b/src/views/demo/comp/button/index.vue
index 13ecb3c6047cf782c706386c018ede53afa26863..fb21fb1266d1525686ec7fd5eee2c104132d3412 100644
--- a/src/views/demo/comp/button/index.vue
+++ b/src/views/demo/comp/button/index.vue
@@ -4,93 +4,109 @@
title="基础组件"
content=" 基础组件依赖于ant-design-vue,组件库已有的基础组件,项目中不会再次进行demo展示(二次封装组件除外)"
>
-
- 确认
-
+
+
+
+
+
success
+
+
成功
+
禁用
+
loading
+
link
+
loading link
+
disabled link
+
+
-
-
success
-
成功
-
禁用
-
loading
-
link
-
loading link
-
disabled link
-
+
+
warning
+
警告
+
禁用
+
loading
+
link
+
loading link
+
disabled link
+
-
-
warning
-
警告
-
禁用
-
loading
-
link
-
loading link
-
disabled link
-
+
+
error
+
错误
+
禁用
+
loading
+
link
+
loading link
+
disabled link
+
-
-
error
-
错误
-
禁用
-
loading
-
link
-
loading link
-
disabled link
-
+
+
ghost
+
幽灵成功
+
幽灵警告
+
幽灵错误
+
幽灵警告dashed
+
幽灵危险
+
+
+
+
+
+
+
primary
+
主按钮
+
禁用
+
+ 危险
+
+
loading
+
link
+
loading link
+
disabled link
+
-
-
ghost
-
幽灵成功
-
幽灵警告
-
幽灵错误
-
幽灵警告dashed
-
幽灵危险
-
-
常规幽灵按钮通常用于有色背景下
-
幽灵主要
-
幽灵dashed
-
禁用
-
loading
-
幽灵默认
-
-
-
-
-
-
+
+
default
+
默认
+
禁用
+
危险
+
loading
+
link
+
loading link
+
disabled link
+
-
-
primary
-
主按钮
-
禁用
-
loading
-
link
-
loading link
-
disabled link
-
+
+
dashed
+
dashed
+
禁用
+
危险
+
loading
+
-
-
default
-
默认
-
禁用
-
loading
-
link
-
loading link
-
disabled link
-
-
-
-
dashed
-
dashed
-
禁用
-
loading
-
+
+
ghost 常规幽灵按钮通常用于有色背景下
+
+
幽灵主要
+
幽灵默认
+
幽灵dashed
+
禁用
+
loading
+
+
+
+
+
+
+
+
+