가상 선택자 :after 의미를 모르겟어여..

 

.container:after { content:""; clear:both; display:block; }

가상 선택자란 실제로는 존재하지 않는 요소나 특수한 상황에서만 발생하는 동적인 요소를 CSS 명령으로 제어하는 기법 입니다. 가상 선택자는 다시 '가상 클래스 선택자'와 '가상 요소 선택자'로 구분할 수 있는데요. 가상 클래스 선택자(:link, :visited, :hover,:active, :focus, :first-child)는 특정 요소에 마치 동적으로 class를 부여한 것과 같은 이치로 이용할 수 있습니다. 가상 요소 선택자(:first-line, :first-letter, :before, :after)는 실제로 존재하지 않는 요소를 마치 존재하는 것처럼 이용하는 기법 입니다. :after라는 가상 요소 선택자는 content 라는 속성을 이용해서 .container 블럭이 끝나기 직전 content 속성의 값 "*" 을 화면에 출력할 수 있습니다. 이렇게 생성된 요소에 clear:both 속성을 부여하면 자식의 높이를 부모에게 전달할 수 있는데 실제로 HTML 코드에는 빈 요소가 존재하지 않기 때문에 가장 이상적인 방법이라고 할 수 있습니다. 그러나 IE 6~7 브라우저는 가상 요소 선택자를 지원하지 않습니다. 

 

이게 무슨말인지 쉽게 설명좀 부탁드립니다 ㅜㅜ

 

|

댓글 7개

쉽게 말하자면 내가 원할때 붙였다 뗐다 할수 있는 접미사 같은겁니다. 음.. 더 어려운가요 ;;;
물+컵 = 물컵 이런식으로 사용하는것처럼요 .
감사합니다. 쉽게 이해되었습니다!
.container:after { content:"bbb"; clear:both; display:block; }
라고 하면
<div class="container">aaa</div>
aaa 다음에 bbb 가 나옵니다.
즉..
코드에는 없지만 가상으로 있는거 처럼 꾸며준다는 얘기죠...
감사합니다. 구체적으로 예를 들어주시니 이해되네여 ^___^
저는 :before / :after 가상 클래스를 많이 사용합니다.
특히나 오토 넘버링도 돼서 챕터나 세부 카테고리를 작성할 때에는 counter-increment를 사용하는 편입니다.
감사합니다 다음에 카운터인크리먼트도 공부해볼께여~
:before / :after 의 기본 개념은 '가상 텍스트노드 생성' 입니다. 단순히 가상 요소- 라기보단 '텍스트'요소라는 정의가 붙어있습니다.
보통들 기본 inline 요소로 만들어진 가상요소를 CSS에서 display:block 처리해주어서 블록요소로 만든다음에 사용하죠.
div:after -> HTML로 따지자면 종료태그의 바로 전라인에 content:"" 에 입력한 텍스트를 텍스트노드로 가상으로 삽입해주게됩니다.
:before 시작태그가 열린 바로다음줄에 (제일 첫번째 자식컨텐츠) content 로 입력해준 텍스트노드를 마찬가지로.. 가상으로 만들어줍니다 :) ㅎㅎ
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

+
제목 글쓴이 날짜 조회
11년 전 조회 2,241
11년 전 조회 1,809
11년 전 조회 1,553
11년 전 조회 1,217
11년 전 조회 959
11년 전 조회 1,142
11년 전 조회 1,033
11년 전 조회 1,510
11년 전 조회 2,314
11년 전 조회 990
11년 전 조회 1,162
11년 전 조회 1,823
11년 전 조회 1,504
11년 전 조회 1,396
11년 전 조회 1,321
11년 전 조회 1,237
11년 전 조회 3,593
11년 전 조회 1,237
11년 전 조회 1,844
11년 전 조회 2,093
11년 전 조회 1,408
11년 전 조회 1,401
11년 전 조회 1,398
11년 전 조회 861
11년 전 조회 1,257
11년 전 조회 1,588
11년 전 조회 1,560
11년 전 조회 916
11년 전 조회 1,268
11년 전 조회 1,040
11년 전 조회 1,788
11년 전 조회 1,437
11년 전 조회 818
11년 전 조회 2,239
11년 전 조회 6,714
11년 전 조회 1,371
11년 전 조회 1,220
11년 전 조회 1,162
11년 전 조회 1,014
11년 전 조회 1,546
11년 전 조회 930
11년 전 조회 3,501
11년 전 조회 1,340
11년 전 조회 1,751
11년 전 조회 1,117
11년 전 조회 2,746
11년 전 조회 1,394
11년 전 조회 2,674
11년 전 조회 2,035
11년 전 조회 2,553
11년 전 조회 1,501
11년 전 조회 2,628
11년 전 조회 1,438
11년 전 조회 1,135
11년 전 조회 1,130
11년 전 조회 5,511
11년 전 조회 1,328
11년 전 조회 880
11년 전 조회 841
11년 전 조회 1,209
11년 전 조회 1,550
11년 전 조회 1,975
11년 전 조회 2,280
11년 전 조회 1,195
11년 전 조회 1,510
11년 전 조회 1,448
11년 전 조회 1,090
11년 전 조회 849
11년 전 조회 2,281
11년 전 조회 1,518
11년 전 조회 3,354
11년 전 조회 1,257
11년 전 조회 1,094
11년 전 조회 2,193
11년 전 조회 2,850
11년 전 조회 2,202
11년 전 조회 3,251
11년 전 조회 1,629
11년 전 조회 3,371
11년 전 조회 886
11년 전 조회 1,189
11년 전 조회 2,074
11년 전 조회 2,407
11년 전 조회 1,086
11년 전 조회 2,916
11년 전 조회 3,105
11년 전 조회 1,632
11년 전 조회 2,297
11년 전 조회 1,152
11년 전 조회 1,495
11년 전 조회 1,170
11년 전 조회 2,366
11년 전 조회 2,280
11년 전 조회 1,264
11년 전 조회 5,397
11년 전 조회 2,433
11년 전 조회 3,164
11년 전 조회 2,006
11년 전 조회 1,053
11년 전 조회 2,118
🐛 버그신고