diff --git a/client/src/components/SearchBar/SearchBar.module.css b/client/src/components/SearchBar/SearchBar.module.css index e5dedc9..a7b72c7 100644 --- a/client/src/components/SearchBar/SearchBar.module.css +++ b/client/src/components/SearchBar/SearchBar.module.css @@ -1,18 +1,44 @@ -.SearchBar { +.SearchContainer { + display: flex; + justify-content: center; + align-items: center; width: 100%; - padding: 10px 0; - color: var(--color-primary); - /* font-size: 20px; */ - margin-bottom: 20px; - background-color: transparent; - border: none; - border-bottom: 2px solid var(--color-accent); - opacity: 0.5; - transition: all 0.2s; - border-radius: 0px; + padding-bottom: 10px; } -.SearchBar:focus { - opacity: 1; +.SearchWrapper { + display: flex; + align-items: center; + background-color: var(--color-bg-secondary); + border: 2px solid var(--color-accent); + border-radius: 30px; /* 药丸形状 */ + padding: 10px 15px; + width: 70%; + /* max-width: 600px; */ + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + transition: box-shadow 0.2s ease-in-out; +} + +.SearchWrapper:focus-within { + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); +} + +.SearchIcon { + color: var(--color-primary); + margin-right: 10px; +} + +.SearchBar { + flex: 1; + border: none; + background-color: transparent; outline: none; -} \ No newline at end of file + font-size: 16px; + color: var(--color-primary); + padding: 0; +} + +.SearchBar::placeholder { + color: var(--color-placeholder); + opacity: 0.7; +} diff --git a/client/src/components/SearchBar/SearchBar.tsx b/client/src/components/SearchBar/SearchBar.tsx index f0b78a5..1db58cd 100644 --- a/client/src/components/SearchBar/SearchBar.tsx +++ b/client/src/components/SearchBar/SearchBar.tsx @@ -15,6 +15,9 @@ import { State } from '../../store/reducers'; import { bindActionCreators } from 'redux'; import { actionCreators } from '../../store'; +import Icon from '@mdi/react'; +import { mdiSearchWeb } from '@mdi/js'; + interface Props { setLocalSearch: (query: string) => void; appSearchResult: App[] | null; @@ -120,13 +123,16 @@ export const SearchBar = (props: Props): JSX.Element => { return (