hover시 다른 요소 나오게 해보기

적자생존·2022년 7월 25일
0

CSS

목록 보기
5/5

1. 토글 식으로 만들기 위해 두 개의 요소를 생성해 주고 각기 다른 아이디를 할당해 준다.

<IntroWrapper id="intro">어떤 하루를 보내셨나요?</IntroWrapper>
<MoveToWriteWrapper to={"/write"} id="write">3줄일기 쓰러가기</MoveToWriteWrapper>

2. 두개의 div를 감싸준다.

<NavSection>
<IntroWrapper id="intro">어떤 하루를 보내셨나요?</IntroWrapper>
<MoveToWriteWrapper to={"/write"} id="write">3줄일기 쓰러가기</MoveToWriteWrapper>
</NavSection>

※ 정확한 영역에 hover를 하고 싶으면 한 번 더 감싸주면 됨

3. CSS를 작성한다.

const NavSection = styled.div`
  display: flex;
  border-radius: 100px;

  :hover {
    #write {
      display: block;
      #intro {
        display: none;
      }
    }
  }
`;

const IntroWrapper = styled.div`
  text-align: center;
  width: 500px;
  background-color: ${colorPick.gray};
  color: white;
  padding: 10px 0px;
  border-radius: 100px;
`;

const MoveToWriteWrapper = styled(Link)`
  display: none;
  text-align: center;
  width: 500px;
  position: absolute;
  background-color: ${colorPick.purple};
  color: white;
  padding: 10px 0px;
  border-radius: 100px;
  cursor: pointer;
  text-decoration: none;
  &:focus,
  &:hover,
  &:visited,
  &:link,
  &:active {
    text-decoration: none;
  }
`;

ID선택자와 :hover를 이용해 display none과 block사이를 적절하게 만들어 준다.

profile
적는 자만이 생존한다.

0개의 댓글