inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

처음 만난 리액트(React)

styled-components 질문

1489

mine702

작성한 질문수 4

0

& > * {
        :not(:last-child) {
            margin-bottom: 16px;
        }
  }
 
이게 무슨 의미인지 알고싶습니다
 
*가 전체를 말하는건 알겠는데 &> 앞에 붙은 이것을
모르겠습니다

styled-components javascript react HTML/CSS

답변 2

3

류윤종

& 는 해당 태그 본인 자체를 뜻합니다.

즉 tag > * 에 해당 스타일을 적용하라는 의미에요.

>는 그냥 평범한 css 선택자중 하나로 자식결합 선택자입니다.

1

Inje Lee (소플)

안녕하세요, mine702님.

위에 류윤종님께서 잘 답변해주셨네요~

 

위 코드에서 '>'는 child selector를 의미합니다.

child selector는 어떤 부모 element의 자식 element에 스타일을 적용하고 싶을 때 아래와 같이 사용합니다.

parent element > child element {

}

 

위 코드에서는 아래와 같이 사용했는데,

& > * {

}

여기서 '&'는 Sass에서 제공하는 parent selector를 의미합니다(아래 링크 참조).

parent selector는 말 그대로 부모 자신을 선택하기 위한 selector입니다.

https://sass-lang.com/documentation/style-rules/parent-selector

 

그리고 우리가 실습에 사용한 styled-components는 stylis라는 preprocessor를 사용하는데,

stylis가 스타일 중첩을 위해서 Sass(SCSS)와 유사한 형태의 문법을 지원합니다(아래 링크 참조).

https://styled-components.com/docs/basics#pseudoelements-pseudoselectors-and-nesting

 

 

그리고 이미 알고계신 것처럼 '*'는 모든 element를 선택하기 위한 universal selector입니다.

https://developer.mozilla.org/en-US/docs/Web/CSS/Universal_selectors

 

그래서 결론적으로 styled-components에서 '& > *' 라는 selector는,

해당 부모 element의 모든 자식들에게 스타일을 적용하기 위한 selector라고 보시면 됩니다.

그리고 그 안에서 다시 ':not(:last-child)'라는 selector를 이용해서 마지막 자식이 아닌 element에만 스타일을 적용하도록 한 것입니다.

강의가 삭제되었다고 합니다

0

111

1

이거 왜 존재하지 않는다고 뜨는건가요

0

138

1

존재하지 않는 수업이라고 떠요

0

184

1

안드로이드 에뮬레이터 오류

0

101

1

교재 구입해서 강의 들으려고 하는데 커리큘럼이 없어졌어요.

0

130

1

prevIsConfiromed 질문

1

144

2

chapter14 잘이해가 되지않습니다..

1

136

2

2025년 3월 리액트버전

1

205

2

npm 설치 오류

1

178

1

chapter_07 콘솔로그 질문드려요~!

1

129

2

안녕하세요 미니블로그 실습 질문드립니다.

1

179

3

에러가 떠요

1

220

3

Chapter6 질문 드립니다

1

210

2

실습 코드 있을까요?

1

208

2

상태가 업데이트될때 컴포넌트 최상단의 console.log 코드가 두번 실행되는 이유가 궁금합니다.

1

234

2

npx create-react-app my-app 명령어 입력이 잘못된 것 같습니다

0

310

3

이름과 코멘트 줄바꿈이 안 됩니다.

0

142

1

버튼이 안 뜹니다

0

305

2

npx create-react-app my-app

1

472

2

jsx 코드 작성해보기에서 index.js 수정 후 에러 뜹니다.

1

377

3

Chapter_05 터미널, 리액트 에러

0

194

2

npx create-react-app my-app 명령어 반응없음

1

434

3

import 코드 에러

1

215

1

백틱

1

122

1