어떤 브라우저가 페이지에 액세스하는지에 따라 두 가지 스타일 시트 중 하나를로드해야하는 상황에 있습니다. IE 이외의 다른 항목이 있으면
"새"스타일 시트
IE는> = 9는 "새로운"스타일 시트를로드하는 경우
IE < 9 다음 이전 스타일!에 대한 조건부 주석! 이전 버전의 Firefox 용 조건부 설명
를로드 할 경우에 그것을 달성하기 위해 사용되는 코드입니다 :
이<!--[if lt IE 9]>
<link type="text/css" rel="stylesheet" href="/stylesheets/old.css">
<![endif]-->
<!--[if gte IE 9]>
<link type="text/css" rel="stylesheet" href="/stylesheets/new.css">
<!--<![endif]-->
<!--[if !IE]><!-->
<link type="text/css" rel="stylesheet" href="/stylesheets/new.css">
<!--<![endif]-->
이 모두에서 잘 작동 모드 ern 브라우저 및 이전 버전의 IE는 이전 스타일을 올바르게로드합니다. 그러나 이전 버전의 Firefox (3.6) 및 잠재적으로 다른 CSS에서는 새 CSS가로드되지 않고 -->
이 웹 페이지에 인쇄됩니다. 이는 IE! <!-->
이 추가되어야하는 라인 때문입니다. 그렇지 않으면 IE 11이 스타일 시트를로드하지 않습니다. Firefox 3.6에서 제대로 작동합니다.
다양한 브라우저 및 버전에서 제대로 작동하려면 이러한 조건부 주석을 설정하는 적절한 방법은 무엇입니까?
그래, 아주 특이한 것 같습니다. 나는 그 행동을 재현 할 수 있었다. – BoltClock
최신 브라우저의 경우에는 코멘트가 없어야합니다. 그래서 new.css 스타일 시트를 제일 먼저 넣으십시오. [if ....] .. ' – Caelea
@Caelea : 주석 구문은 IE에서 작동하기 위해서 필요합니다. 유효성을 검사 할 마크 업. 주석은 다른 브라우저에서 잘 읽는 방식으로 설정됩니다. 코드의 구문 강조 표시를 살펴보면 코드도 볼 수 있습니다. – BoltClock