프론트엔드 웹/React

MUI AutoComplete 스크롤바 CSS

세리둥절 2022. 3. 2. 11:12
반응형

 

✔️ 필요성

MUI에서 AutoComplete SearchInput을 예쁘게 꾸몄는데 스크롤바 디자인이 너무 무식하다 이를 어쩐담

 

const InputWrapper = styled.div`
  width: 300px;
  background-color: "transparent";
  border: 0px solid ${({ theme }) => theme.colors.grayD0};
  border-bottom-width: 2px;
  padding: 1px;
  display: flex;
  flex-wrap: wrap;

  &:hover {
    border-color: "#40a9ff";
  }

  &.focused {
    &::before {
      content: "";
      display: block;
      position: absolute;
      width: 320px;
      height: 260px;
      transform: translateX(-10px) translateY(-10px);
      background: "transparent";
      border-radius: 4px;
      box-shadow: 0 2px 10px 5px rgba(0, 0, 0, 0.06);
      position: absolute;
    }
  }

  & input {
    background-color: "#fff";
    color: "rgba(0,0,0,.85)";
    height: 30px;
    box-sizing: border-box;
    padding: 4px 6px;
    width: 0;
    min-width: 30px;
    flex-grow: 1;
    border: 0;
    margin: 0;
    outline: 0;
  }
`;

 

 

 

 

 

✔️ 문제 확인

ListBox에서 아래 -webkit-scrollBar, -webkit-scrollBar-track, -webkit-scrollbar-thumb, -webkit-scrollbar-thumb:hover CSS를 통해서 변경할 수 있다

const Listbox = styled.ul`
  width: 300px;
  margin: 2px 0 0;
  padding: 0;
  position: absolute;
  list-style: none;
  background-color: "#fff";
  overflow: auto;
  max-height: 200px;
  border-radius: 4px;
  z-index: 1;

  /* scrollBar CSS */
  ::-webkit-scrollbar {
    width: 5px;
  }
  ::-webkit-scrollbar-track {
    background: #f1f1f1;
  }
  ::-webkit-scrollbar-thumb {
    background: #888;
  }
  ::-webkit-scrollbar-thumb:hover {
    background: #555;
  }
`;

 

 

반응형