2011-11-26 4 views
14

이전 브라우저에서 HTML5 태그를 인식해야한다면 (사용하려면 Modernizr이나 인기가있는 HTML5 shiv)? 또한이 HTML5 태그의 스타일을 지정하지 않아도 브라우저에서 브라우저를 인식해야합니까? 또는이 태그에 CSS를 추가 할 때만 필요합니까?Modernizr 대 HTML Shiv

감사합니다.

+4

CSS를 통해 html5 태그에 스타일을 추가하려면 HTML5 shiv 만 있으면됩니다. 또한 modernizr에는 HTML5 shiv가 포함되어 있으므로 superset – Raynos

+4

Modernizr이 HTML5 ** 기능 ** (오디오 형식, CSS 스타일 규칙, 로컬 저장 장치 등)을 감지하는 데 더 많이 사용되고 HTML5 태그 지원이 아닌 것을 추가 할 것입니다. –

답변

16

html5shiv는 기본적으로 IE가 HTML5 요소를 인식하고 스타일을 지정할 수있게 해주는 반면 Modernizr은 broswer가 지원하는 동일한 기능 감지를 제공합니다.

그래서 HTML5 shiv는 IE에서 HTML5 태그를 인식하는 데 충분해야합니다. (내가 말하기를 여기 IE는 html5shiv 타겟 이니, 구형 브라우저라고 할 때 무슨 뜻인지 모르겠다.)

두 번째 부분에서는 HTML5 태그의 스타일을 지정하지 않더라도 조언을 구한다. 브라우저가 잘못 표시하거나 전혀 표시하지 않을 수도 있기 때문에 shiv를 사용하면 안심할 수 있습니다.

+0

좋아요, 궁금합니다 내가 스타일을 지정하지 않아도 쉬브가 필요한지. 나쁘기 만해도 IE에서만 작동합니다 (Firefox 1 또는 2 또는 HTML5를 지원하지 않는 Chrome/Opera 버전을 의미하는 구형 브라우저라고 말한 경우) – federicot

+0

요즘 FF1을 사용하는 사람을 찾는 것은 일반적이지 않습니다.) – omarello

+0

You 내가 [위키 백과] (http://en.wikipedia.org/wiki/Modernizr#What_Modernizr_doesn.27t_do)에서 읽은 것에 따르면 잘못되었습니다. – Shimmy

11

HTML5 Shiv는 작으며 Modernizr의 검색 기능이 필요하지 않으면 shiv로 이동하십시오.

파일 크기는 항상 HTML 문서의 머리 부분에 있고 완전히 실행될 때까지 추가 리소스 다운로드를 차단하므로 매우 중요합니다. 그것은 단지 오래된 브라우저가 필요하기 때문에

, 나는 다음과 같은 코드를 사용합니다

<!--[if lt IE 9]> 
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> 
<![endif]--> 

당신이 사용하지 않는 HTML 태그를 제거 할 수 있습니다,하지만 당신은 파일에서 호스팅을 사용 할 수 없게됩니다 Google.

+0

이 _detection_에서 제공하는 항목은 무엇입니까? 나는 HTML과 J를 쓴다. 그리고 html5 요소를 포함한 모든 요소에 스타일을 적용한다고 가정 할 때 "탐지"란 무엇을 의미합니까? 예를 들어 주시겠습니까? –

1

브라우저가 특정 CSS 또는 HTML5 기능을 지원하는 경우 Modernizr을 사용하여 특정 파일을로드 할 수 있습니다. 브라우저가 CSS3 속성과 HTML5 요소로 '캔버스'와 'fontface'

Modernizr.load({ 
test: Modernizr.fontface && Modernizr.canvas, // Test if the browser supports it or not 
yep : '/path-to/html5-css3-attributes.css', // If browser supports it, load this file 
nope: '/path-to/old-css-attributes.css' // If NOT, load this instead 
}); 

당신은 당신의 파일 경로 조건도의 .js를 사용을 지원하지 않는 경우

하자들은 말한다.