HTML5 Shim vs. Shiv

Principiante em Rails.

Estou a codificar CSS na minha aplicação de amostras. Sei que há código Javascript para ajudar navegadores, ou seja, Internet Explorer, a suportar HTML5.

Qual é a diferença entre HTML5 Shim e HTML5 Shiv? Vale a pena saber?

Http://html5shim.googlecode.com/svn/trunk/html5.js

Http://html5shiv.googlecode.com/svn/trunk/html5.js

o meu código, vocês todos:

<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js">
</script>
<![endif]-->
Author: owlstone, 2013-01-20

4 answers

Era originalmente chamado de html5-shiv. Shiv realmente não é o termo certo, uma shiv é um instrumento de esfaqueamento.

Um shim é algo que se usa para nivelar as coisas (ou sustentá-las). Se uma mesa tem uma perna que é muito curta, você pode abri-la com um pedaço de madeira ou uma lista telefônica...

Então html5-shim é para pessoas que esperam que html5shiv seja chamado de shim. É tudo, no que diz respeito às diferenças.

Mais ou menos como polyfilla cobertura sobre as diferenças nas implementações de recursos.
Na América do Norte, Polifill pode ser chamado de "Spackle".

 79
Author: Norguard, 2013-01-20 20:54:33

De http://code.google.com/p/html5shim/

Shiv ou shim?

Pergunta comum: qual é a diferença entre o html5shim e o html5shiv?
Resposta: [8] nada, tem - se um m e tem-se um v-é isso.

 24
Author: Sander Luís, 2014-04-05 14:52:51
A resposta é:

O termo shiv tem origem em John Resig, que se pensava ter usado a palavra para o seu significado calão, um objecto afiado usado como uma faca arma, destinada ao Internet Explorer. A verdade deve ser conhecida, John. destinado a usar a palavra shim , que em computing means an application compatibility workaround. Que corrija o seu erro, a maioria dos programadores familiarizados com a Internet Explorer apreciou o visual imagem. E isso, crianças, é etimologia.

Da página do autor em https://github.com/aFarkas/html5shiv

 13
Author: Adriano Rosa, 2016-04-12 17:05:29
Isto é provavelmente mais simples do que procuras, mas para outros que podem estar confusos. Primeiro, aqui está uma definição não-programável de um Shim:

Substantivo: uma anilha ou uma tira fina de material utilizada para alinhar as peças, para as adaptar , ou para reduzir o desgaste.

Verbo: wedge (algo) ou preencher (um espaço) com um shim.

Para entender um shim em termos de programação, você precisa entender o que é uma dor IE / é para os desenvolvedores web:

Eu era um. dos primeiros navegadores da web disponíveis comercialmente. E pode ter sido o primeiro disponível "de graça". Assim, foi construído antes dos padrões do navegador serem definidos, ou seja, definições de como lidar com html e javascript.

Assim, a fim de manter os sites e aplicações a trabalhar no IE, como os padrões foram produzidos, IE não poderia ou (por razões monopolistas) não iria atualizar IE (Aqui está um grande post com mais informações sobre isso). Isso causou uma ruptura entre IE e outros navegadores que cresceram com o tempo. Esta fenda muitas vezes surgiu em erros inesperados, diferenças de estilo, e algumas aplicações straight-up recusou aos seus usuários a opção de executá-lo a partir de outros navegadores.

Mas, se um produto fosse estar disponível para ambos os tipos de navegador, os desenvolvedores muitas vezes tinham que escrever dois conjuntos de código. Um para praticamente todos os browser modernos, e outro para IE. Obviamente, esta prática tornou a manutenção de um pesadelo. Mas, com o passar do tempo, muitas frameworks/bibliotecas JavaScript começaram a adicionar código abordar especificamente estas questões. Estas peças de código são conhecidas como shims. Porque eles estão a fazer o teu código "encaixar" no IE.

Por exemplo, quando jQuery foi lançado pela primeira vez, uma grande vantagem que teve sobre os seus antecessores - ou apenas escrever a sua própria biblioteca - foi que ele trabalhou em cada navegador, até mesmo IE. Na época IE ainda era muito usado, então isso salvou Desenvolvedores muito tempo. Mas agora jQuery está na versão 3. E a maior diferença entre versões anteriores é que já não suporta IE. Isso é porque todos, até a Microsoft se afastou do IE (o navegador padrão do Win10 é Edge). Mas, infelizmente, muitos sites e aplicações web foram projetados especificamente para IE (por razões de segurança). E mesmo que o IE tenha seguido o caminho do dodô para a maioria das aplicações comerciais, ele ainda oferece recursos de segurança que outros navegadores não (mas eles estão alcançando rapidamente). E mesmo que o tenham feito, o custo da actualização destas aplicações é muitas vezes demasiado elevado. óptimo para ser justificável.

E isso basicamente significa que muitas pessoas ainda são forçadas a usar IE, então esses shims ainda são necessários.
 0
Author: Travis Heeter, 2020-06-20 09:12:55