Existe uma ferramenta online na qual podemos inserir o código-fonte HTML de uma página e minimizar o código?
Eu faria isso para arquivos aspx, pois não é uma boa ideia fazer com que o servidor da web os gzip ...
Existe uma ferramenta online na qual podemos inserir o código-fonte HTML de uma página e minimizar o código?
Eu faria isso para arquivos aspx, pois não é uma boa ideia fazer com que o servidor da web os gzip ...
Respostas:
Talvez tente HTML Compressor , aqui está uma tabela antes e depois que mostra o que ele pode fazer (incluindo para o próprio Stack Overflow):
Ele apresenta muitas seleções para otimizar suas páginas, incluindo a minimização de scripts (ompressor, Google Closure Compiler, seu próprio compressor) onde seria seguro. O conjunto de opções padrão é bastante conservador, então você pode começar com isso e experimentar habilitar opções mais agressivas.
O projeto é extremamente bem documentado e suportado.
Não faça isso . Ou melhor, se você insiste nisso, faça-o depois que quaisquer otimizações de site mais significativas forem concluídas. As chances são muito altas de que o custo / benefício desse esforço seja insignificante, especialmente se você estiver planejando usar ferramentas online manualmente para lidar com cada página.
Use YSlow ou Page Speed para determinar o que você realmente precisa fazer para otimizar suas páginas. Meu palpite é que reduzir bytes de HTML não será o maior problema do seu site. É muito mais provável que compressão, gerenciamento de cache, otimização de imagem, etc. façam uma grande diferença no desempenho geral do seu site. Essas ferramentas mostrarão quais são os maiores problemas - se você já lidou com todos eles e ainda acha que a minificação de HTML faz uma diferença significativa, vá em frente.
(Se você tem certeza de que deseja fazer isso e usa Apache httpd, pode considerar o uso de mod_pagespeed e ativar algumas das opções para reduzir os espaços em branco etc., mas esteja ciente dos riscos .)
white-space: pre
, e a minificação destruiria o texto pré-formatado.
white-space:pre
, então sim, a minimização de HTML seria mais complexa. No entanto, não estou claro por que alguém iria querer usar o espaço em branco: pre em vez de usar um elemento pre
ou code
.
Aqui está uma resposta curta para sua pergunta: você deve minimizar seu HTML, CSS, JS . Existe uma ferramenta fácil de usar que é chamada de grunhido . Ele permite que você automatize muitas tarefas. Entre eles JS , CSS , minificação de HTML , concatenação de arquivos e muitos outros .
As respostas escritas aqui estão extremamente desatualizadas ou às vezes não fazem sentido. Muitas coisas mudaram desde o antigo 2009, então tentarei responder adequadamente.
Resposta curta - você definitivamente deve reduzir o HTML . É trivial hoje e dá aproximadamente 5% de aceleração . Para uma resposta mais longa, leia a resposta completa
Antigamente, as pessoas reduziam manualmente o css / js (executando-o por meio de alguma ferramenta específica para reduzi-lo). Foi meio difícil automatizar o processo e definitivamente exigia algumas habilidades. Sabendo que muitos sites de alto nível, mesmo agora, não estão usando gzip (o que é trivial), é compreensível que as pessoas relutassem em reduzir o html.
Então, por que as pessoas minimizam o js, mas não o html ? Ao minimizar JS, você faz o seguinte:
var isUserLoggedIn
para var a
)O que deu muitas melhorias, mesmo nos velhos tempos. Mas em html não era possível mudar nomes longos para abreviar, também não havia quase nada a comentar durante esse tempo. Então, a única coisa que restou foi remover espaços e novas linhas. O que dá apenas uma pequena quantidade de melhoria.
Um argumento errado escrito aqui é que, como o conteúdo é veiculado com gzip, a minimização não faz sentido. Isso está totalmente errado. Sim, faz sentido que o gzip diminua a melhoria da minimização, mas por que você deveria fazer o gzip de comentários, espaços em branco se você pode cortá-los corretamente e gzip apenas as partes importantes. É o mesmo que se você tivesse uma pasta para arquivar que contém alguma porcaria que você nunca usará e você decidir compactá-la em vez de limpá-la e compactá-la.
Outro argumento por que é inútil fazer a minimização é que é tedioso. Talvez isso fosse verdade em 2009, mas novas ferramentas surgiram depois dessa época. No momento, você não precisa reduzir manualmente sua marcação. Com coisas como o Grunt , é trivial instalar o grunt-contrib-htmlmin (depende do HTMLMinifier por @kangax) e configurá-lo para reduzir o seu html. Tudo que você precisa é de 2 horas para aprender a grunhir e configurar tudo e então tudo é feito automaticamente em menos de um segundo. Parece que 1 segundo (que você pode até automatizar para não fazer nada com grunt-contrib-watch ) não é tão ruim para aproximadamente 5% de melhoria (mesmo com gzip).
Mais um argumento é que CSS e JS são estáticos , e HTML é gerado pelo servidor, então você não pode pré-minificá-lo. Isso também era verdade em 2009, mas atualmente mais e mais sites estão se parecendo com um aplicativo de uma única página, onde o servidor é fino e o cliente faz todo o roteamento, modelagem e outras lógicas. Portanto, o servidor está apenas fornecendo JSON e o cliente o renderiza. Aqui você tem muito html para a página e diferentes modelos.
Então, para terminar meus pensamentos:
<span>
). Em primeiro lugar, você sempre pode encontrar uma maneira de escrever html válido, tornando-o independente de espaços em branco. Além disso, você pode se surpreender em saber, mas o minificador JS / CSS também pode introduzir um bug - o que não significa que você não deve usá-lo. Portanto, duas maneiras de resolver seu problema: aprender a escrever marcação agnóstica de espaço em branco, testar seu produto antes / depois da minificação (CSS / HTML / JS). Também no Minifier, você pode especificar quais espaços em branco deseja preservar.
* { white-space: pre; }
é óbvio, mas se você estiver removendo todos os espaços em branco e não apenas recolhendo-os (substituindo-os pelas margens), o texto pode ser copiado incorretamente e causar estragos em navegadores de texto e leitores de tela.
Eu escrevi uma ferramenta da web para reduzir o HTML. http://prettydiff.com/?m=minify&html
Esta ferramenta opera usando estas regras:
style
tag é considerado CSS e é reduzido como talscript
tag é considerado JavaScript, a menos que seja fornecido um tipo de mídia diferente e, em seguida, minimizado como tal<!--[if IE 8.0]><link rel="stylesheet" href="css/ie8.css" type="text/css" /><![endif]-->
Isso funcionou para mim:
http://minify.googlecode.com/git/min/lib/Minify/HTML.php
Não é uma ferramenta on-line já disponível, mas sendo um simples incluir PHP, é fácil o suficiente para você mesmo executá-lo.
Eu não salvaria arquivos compactados, porém, faça isso dinamicamente se realmente for necessário, e é sempre uma ideia melhor habilitar a compactação de servidor Gzip. Não sei como isso está envolvido no IIS / .Net, mas no PHP é tão trivial quanto adicionar uma linha ao arquivo de inclusão global
CodeProject tem um projeto de amostra publicado ( http://www.codeproject.com/KB/aspnet/AspNetOptimizer.aspx?fid=1528916&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2794900 ) para lidar com algumas das seguintes situações. .
Para a plataforma Microsoft .NET existe uma biblioteca chamada WebMarkupMin , que produz a minificação do código HTML.
Além disso, existe um módulo para integração desta biblioteca na ASP.NET MVC - WebMarkupMin.Mvc .
tente http://code.mini-tips.com/html-minifier.html , este é .NET Libary para Html Minifier
HtmlCompressor é uma biblioteca .NET pequena, rápida e muito fácil de usar que minimiza a fonte HTML ou XML fornecida, removendo espaços em branco extras, comentários e outros caracteres desnecessários, sem quebrar a estrutura do conteúdo. Como resultado, as páginas ficam menores em tamanho e carregam mais rápido. Uma versão de linha de comando do compressor também está disponível.