inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

입문자를 위한, HTML&CSS 웹 개발 입문

고급 선택자 2탄

고급 선택자 2탄에서 질문이 있습니다.

275

dopal0426

작성한 질문수 1

0

안녕하세요!

고급 선택자 2탄 영상의 대략 8분 경에서 [data-tooltip]이 relative가 되서 absolute인 [data-tooltip]:hover::after가 저기에 붙었다고 하셨는데, absolute는 부모 요소 중에 static이 아닌 요소에 붙지 않나요? 그러면 :hover::after처럼 의사요소는 붙은 요소의 자손으로 들어가는 걸까요?

[data-toolip]과 [data-toolip]:hover::after이 동일 선상에 위치(형제 요소)처럼 보이는데 어떻게 그럴 수 있는지 궁금합니다!

HTML/CSS

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

[data-tooltip]을 사용하는 고급 선택자에 대해서 질문해 주셨군요. 님의 질문을 잘 이해했습니다.

일반적으로 position: absolute; 속성을 가진 요소는 가장 가까운 position 속성이 static이 아닌 조상 요소에 대해 상대적으로 배치됩니다. 그렇기 때문에 상위 요소인 [data-tooltip]position: relative;로 설정되어 있으면, 이 요소를 기준으로 하여 absolute::after 의사요소가 위치하게 됩니다.

:hover::after 같은 의사요소는 실제로 부모 요소에 종속되어 있으며, DOM 트리에서 실제 요소처럼 부모의 자식 요소로 동작합니다. 그러나 의사요소가 시각적으로 형제 요소처럼 보일 수 있는 것은 해당 의사요소의 position 속성과 다른 CSS 스타일링 속성들에 의해 위치가 지정되기 때문입니다.

[data-tooltip]과 [data-tooltip]:hover::after가 동일 선상에 나란히 배치되어 보이는 것은 position: absolute;로 설정된 ::after 요소가 [data-tooltip]에 대하여 절대 위치를 차지하기 때문에 가능합니다. ::after 의사요소는 그 자체로 별도의 블록 형태를 가지기 때문에, 시각적으로는 형제 요소처럼 나란히 배치될 수 있는 것입니다.

추가적인 도움이 필요하다면, 질문하신 강의 동영상이나 관련 예제 코드를 보면서 구체적인 상황에서 CSS가 어떻게 적용되는지를 더 자세히 살펴보는 것이 좋겠습니다. 웹 개발 입문 과정을 수강하시면서 이런 부분들을 직접 연습해 보시면 이해에 더 도움이 될 것입니다.

강의자료

0

135

2

button 질문

0

48

2

html설명하실때 접속시는 e북 링크는 어디에 있나요

0

102

1

style 태그를 사용할 때

0

79

1

강의와 제 결과가 달라요

0

87

2

상속과 접근 제어: 부모 & 자식 클래스에서 서로 다른 값 설정시

0

69

1

소스링크가 없습니다!

0

190

2

id 중복으로 해도 문제 없습니다

0

414

2

강의 자료

0

234

2

깃허브 링크 주소

0

339

2

제 vscode가 이상해요

0

278

1

화면 반영 안됨

0

226

1

float속성

0

272

1

html{}

0

341

1

class와 id

0

276

1

제출하기 버튼

0

645

1

a 태그 이용해 이동

0

414

1

비디오태그

0

448

1

<html lang = "ko">

0

831

1

flexbox 부모 요소 이름

0

285

1

제출하기 버튼 코드 2가지 차이

0

432

1

최상위 태그 html 태그

0

427

1

저장시 줄바꿈

0

507

1

ctrl + 방향키

0

744

1