을 사용하고 있으며 지금까지 Selectivizr을 사용하기 시작한 지금까지는 문제가 없었습니다. 이해가 안되는 어떤 이유로 IE8에서 Javascript 오류가 발생했습니다.HTML5 상용구 + 조건부 댓글
<!--[if lt IE 7]> <html class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <html class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <html class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en"> <!--<![endif]-->
로를 :
몇 가지 테스트 후, 나는 html
에 클래스를 추가 브라우저에 따라 (상용구가에서) 사용하는 조건부 브라우저 의견 사용을 중단 할 때 오류가 사라졌다 것으로 나타났습니다 위에서 코드를 제거하고 <html>
으로 바꾸면 모든 것이 정상적으로 작동한다고 말했습니다. 나는 완전히 조건부 주석을 제거 할 그나마 때문에
은 (그들이 나 브라우저 별 CSS를 작성하는 데 도움), 나는 같은 일을 생각하지만, 대신 html
에 적용하는 나는 <body>
을 위해 그것을 할 것입니다 :
<!--[if lt IE 7]> <body class="no-js ie6 oldie" lang="en"> <![endif]-->
<!--[if IE 7]> <body class="no-js ie7 oldie" lang="en"> <![endif]-->
<!--[if IE 8]> <body class="no-js ie8 oldie" lang="en"> <![endif]-->
<!--[if gt IE 8]><!--> <body class="no-js" lang="en"> <!--<![endif]-->
모든 것이 제대로 작동하는 것처럼 보이지만 초보자부터이 해결 방법이 올바른지 확인하고 싶습니다. 아니면 단점이 있습니까?
더 많은 질문 : 사용자가 Firefox 또는 Chrome으로 사이트를 방문하면 어떤 body
이 "사용"될까요? 나는 클래스없이 "body
"을 사용할 것이라고 생각하십니까?
내 논리는 다른 모든 브라우저에 body
을 "사용"하도록하기 위해 다른 조건부 주석을 쓰겠다고 말했지만, 공식적인 상용구 템플릿에는 그런 주석이 존재하지 않으므로 그럴 필요가 없습니다 ... 왜 안 되겠습니까? ?
당신이 당신의 IE8의 문제에 대한 selectivizr로 티켓을 제출할 수 있다면, 당신은해야한다. :) –
시간을내어 주셔서 감사합니다! 'body' 태그를 사용합니다 + selectivizr로 티켓을 보내고 문제를 해결할 수있는 경우 변경 사항을 취소합니다. – Andrej