WIPIVERSE

조건부 주석

조건부 주석

정의
조건부 주석(Conditional Comment)은 HTML 문서에서 특정 브라우저, 주로 마이크로소프트의 Internet Explorer(IE) 버전에만 적용되도록 하는 주석 형태이다. 일반적인 HTML 주석(<!-- … -->)과 달리, 조건부 주석은 브라우저가 이를 해석하고 해당 조건을 만족할 경우에만 주석 안의 내용을 실행한다.

주요 특징

구분 내용
목적 IE 버전에 따라 다른 스크립트, 스타일시트, 마크업을 제공
표현 방식 <!--[if 조건]> HTML 코드 <![endif]--> 형태
조건 표현 IE, lt IE 9, gt IE 6, !IE 등 연산자를 사용
지원 브라우저 IE 5~9까지 지원; IE 10 이후와 다른 브라우저는 무시
폐지 여부 HTML5 표준에서 비표준으로 간주되어 폐지 권장; IE 10 이상에서는 동작하지 않음

예시

<!-- Internet Explorer 9 이하에만 적용 -->
<!--[if lt IE 9]>
  <script src="ie8-legacy.js"></script>
  <link rel="stylesheet" href="ie8-style.css">
<![endif]-->

<!-- 모든 비-IE 브라우저에 적용 -->
<!--[if !IE]><!-->
  <link rel="stylesheet" href="modern.css">
<!--<![endif]-->

어원 및 용어
조건부는 ‘조건에 따라 달라지는’이라는 의미이며, 주석은 코드에 대한 설명이나 비활성화를 위한 문법을 뜻한다. 영어 원어인 “Conditional Comment”를 직역한 형태이다.

사용 맥락

  • 레거시 웹 애플리케이션에서 IE 6~8 등 오래된 브라우저 호환성을 유지할 때
  • 특정 IE 전용 CSS 해킹 또는 스크립트 삽입이 필요할 경우
  • 현재는 대부분의 웹 개발에서 사용을 지양하고, 대신 CSS 미디어 쿼리, JavaScript feature detection(예: Modernizr) 등을 활용한다.

현황
조건부 주석은 최신 웹 표준에서 비표준으로 간주되며, Internet Explorer 10 이후에서는 지원되지 않는다. 따라서 신뢰성 있는 웹 개발에서는 조건부 주석 대신 표준화된 대체 기법을 사용하는 것이 권장된다.

둘러보기

더 찾아볼 만한 주제

    전체 문서 보기