DOM

settings_applicationsEventTarget  >   settings_applicationsNode  >   settings_applicationsElement  >   settings_applications[[Prototype]]

DOM

Editing
  • account_tree
  • bug_report

DOMTokenListclassList

요소의 class 값 목록을 유사 배열인 DOMTokenList로 참조한다.

설명

웹브라우저는 요소의 class 목록을 DOMTokenList 객체로 준비해 준다. DOMTokenList 객체는 add(), remove(), replace(), toggle() 메소드 등을 사용하여 자료 변경이 가능하다. 따라서 자유롭게 class 항목을 추가하거나 제거, 또는 변경이 가능하다. 이때 웹브라우저는 변경된 class를 분석해 리플로우(reflow), 리페인팅(repainting)한다.

최종 렌더링 이후 동적 CSS 적용을 위해서 매우 유용한 프로퍼티이다. style이라는 프로퍼티로 CSSStyleDeclaration 객체를 참조해 요소에게 인라인 스타일로 동적 적용이 가능하지만 복잡한 스타일 적용은 classList 프로퍼티를 사용하는게 더욱 효과적이다. 웹 문서에 관여하는 CSS 코드에 동적으로 적용할 CSS class 를 미리 준비해 두어야 하는데 다음 사항을 주의할 필요가 있다.

classList 프로퍼티를 통하여 DOMTokenList 자료 구조를 변경할 때 적용 시점에 따라 이미 적용된 스타일이 재정의 될 것이라 생각하지만 모두 그렇지 않다. 웹브라우저는 웹 문서에 사용되는 class를 미리 해석해 준비해 두어 적용 시점이 되면 요소에게 반영해서 렌더링한다. 따라서 DOMTokenList 자료 구조를 변경할 때 우선 순위가 낮은 class를 사용할 경우에는 반영이 안된다. 이 경우에는 !important 키워드를 사용해야 한다.

구문

형식
element.classList
요소의 classList 속성으로 DOMTokenList를 반환받아 동적으로 클래스를 추가하거나 제거할 수 있다.

속성 명세

명세
분류설명
writableyes

버전 명세

지원 웹브라우저