diff --git a/packages/devui-vue/devui/search/src/components/search-close-icon.tsx b/packages/devui-vue/devui/search/src/components/search-close-icon.tsx
new file mode 100644
index 0000000000..15cc1e88e1
--- /dev/null
+++ b/packages/devui-vue/devui/search/src/components/search-close-icon.tsx
@@ -0,0 +1,11 @@
+const SearchCloseIcon = (): JSX.Element => (
+
+);
+export default SearchCloseIcon;
diff --git a/packages/devui-vue/devui/search/src/components/search-icon.tsx b/packages/devui-vue/devui/search/src/components/search-icon.tsx
new file mode 100644
index 0000000000..616065e652
--- /dev/null
+++ b/packages/devui-vue/devui/search/src/components/search-icon.tsx
@@ -0,0 +1,10 @@
+const SearchIcon = (): JSX.Element => (
+
+);
+export default SearchIcon;
diff --git a/packages/devui-vue/devui/search/src/search.scss b/packages/devui-vue/devui/search/src/search.scss
index ac654e09a3..59cbad5404 100644
--- a/packages/devui-vue/devui/search/src/search.scss
+++ b/packages/devui-vue/devui/search/src/search.scss
@@ -44,18 +44,23 @@
}
}
- svg.svg-icon-clear path,
- svg.svg-icon-search path {
- fill: $devui-icon-text;
+ &__clear,
+ &__icon {
+ @include size($devui-size-md, $devui-size-md);
+ @include flex;
+
+ & svg {
+ path {
+ fill: $devui-icon-fill;
+ }
+ @include size($devui-font-size-md, $devui-font-size-md);
+ }
}
&__clear {
position: absolute;
right: $devui-size-md;
cursor: pointer;
- height: 100%;
- @include size($devui-size-md, $devui-size-md);
- @include flex;
&::after {
content: '';
@@ -76,9 +81,6 @@
z-index: 1;
right: 0;
top: 0;
- width: $devui-size-md;
- height: $devui-size-md;
- @include flex;
}
&--sm {
@@ -91,15 +93,15 @@
}
}
- .#{$devui-prefix}-search__icon {
- font-size: $devui-font-size-sm;
+ .#{$devui-prefix}-search__icon, .#{$devui-prefix}-search__clear {
@include size($devui-size-sm, $devui-size-sm);
+
+ svg {
+ @include size($devui-font-size-sm, $devui-font-size-sm);
+ }
}
.#{$devui-prefix}-search__clear {
- font-size: $devui-font-size-sm;
- @include size($devui-size-sm, $devui-size-sm);
-
right: $devui-size-sm;
}
}
@@ -114,15 +116,15 @@
}
}
- .#{$devui-prefix}-search__icon {
- font-size: $devui-font-size-lg;
+ .#{$devui-prefix}-search__icon, .#{$devui-prefix}-search__clear {
@include size($devui-size-lg, $devui-size-lg);
+
+ svg {
+ @include size($devui-font-size-lg, $devui-font-size-lg);
+ }
}
.#{$devui-prefix}-search__clear {
- font-size: $devui-font-size-lg;
- @include size($devui-size-lg, $devui-size-lg);
-
right: $devui-size-lg;
}
}
diff --git a/packages/devui-vue/devui/search/src/search.tsx b/packages/devui-vue/devui/search/src/search.tsx
index 7c285ff5b4..aa0ad38641 100644
--- a/packages/devui-vue/devui/search/src/search.tsx
+++ b/packages/devui-vue/devui/search/src/search.tsx
@@ -4,10 +4,11 @@ import { getRootClass } from './composables/use-search-class';
import { keywordsHandles } from './composables/use-search-keywords';
import { keydownHandles } from './composables/use-search-keydown';
import DInput from '../../input/src/input';
-import { Icon } from '../../icon';
import { useNamespace } from '../../shared/hooks/use-namespace';
import './search.scss';
import { createI18nTranslate } from '../../locale/create';
+import SearchCloseIcon from './components/search-close-icon';
+import SearchIcon from './components/search-icon';
export default defineComponent({
name: 'DSearch',
@@ -54,18 +55,18 @@ export default defineComponent({