Есть ли онлайн-инструмент, в который мы можем ввести HTML- код страницы и минимизировать код?
Я бы сделал это для файлов aspx, так как не рекомендуется делать сжатие их веб-сервером ...
Есть ли онлайн-инструмент, в который мы можем ввести HTML- код страницы и минимизировать код?
Я бы сделал это для файлов aspx, так как не рекомендуется делать сжатие их веб-сервером ...
Ответы:
Возможно, попробуйте HTML Compressor , вот таблица до и после, показывающая, что он может делать (в том числе для самого Stack Overflow):
Он имеет множество вариантов оптимизации ваших страниц, включая минимизацию скриптов (компрессор, Google Closure Compiler, ваш собственный компрессор), где это было бы безопасно. Набор параметров по умолчанию довольно консервативен, поэтому вы можете начать с него и поэкспериментировать с включением более агрессивных параметров.
Проект очень хорошо документирован и поддерживается.
Не делай этого . Или, если вы настаиваете на этом, сделайте это после того, как будет завершена более значительная оптимизация сайта. Скорее всего, затраты / выгода для этих усилий ничтожны, особенно если вы планировали вручную использовать онлайн-инструменты для работы с каждой страницей.
Используйте YSlow или Page Speed, чтобы определить, что вам действительно нужно сделать для оптимизации ваших страниц. Я предполагаю, что уменьшение количества байтов HTML не будет самой большой проблемой для вашего сайта. Гораздо более вероятно, что сжатие, управление кешем, оптимизация изображений и т. Д. Повлияют на производительность вашего сайта в целом. Эти инструменты покажут вам, в чем заключаются самые большие проблемы - если вы справились со всеми ними и все же обнаружили, что минификация HTML имеет существенное значение, дерзайте.
(Если вы уверены, что хотите пойти на это, и используете Apache httpd, вы можете рассмотреть возможность использования mod_pagespeed и включения некоторых параметров для уменьшения пробелов и т. Д., Но помните о рисках .)
white-space: pre
, а минификация уничтожит предварительно отформатированный текст.
white-space:pre
, то да, минимизация HTML была бы более сложной. Однако я не понимаю, почему кому-то нужно использовать white-space: pre, а не элемент pre
или code
.
Вот краткий ответ на ваш вопрос: вы должны минимизировать свой HTML, CSS, JS . Существует простой в использовании инструмент, который называется ворчание . Это позволяет автоматизировать множество задач. Среди них JS , CSS , минификация HTML , конкатенация файлов и многие другие. .
Написанные здесь ответы крайне устарели или даже иногда не имеют смысла. По сравнению со старым 2009 годом многое изменилось, поэтому я постараюсь ответить на этот вопрос правильно.
Короткий ответ - вам обязательно нужно минимизировать HTML . Сегодня это банально и дает примерно 5% ускорения. . Для более подробного ответа прочтите весь ответ
Раньше люди вручную уменьшали css / js (запуская его через какой-то специальный инструмент для его минимизации). Было довольно сложно автоматизировать процесс и определенно требовались определенные навыки. Зная, что многие высокоуровневые сайты даже сейчас не используют gzip (что тривиально), понятно, что люди неохотно сокращали html.
Так почему же люди уменьшали js, а не html ? Когда вы минимизируете JS, вы делаете следующее:
var isUserLoggedIn
на var a
)Что дало много улучшений даже в старые времена. Но в html нельзя было менять длинные имена на короткие, да и комментировать за это время было практически нечего. Итак, единственное, что осталось, - это удалить пробелы и новые строки. Что дает лишь небольшое улучшение.
Здесь приведен один неверный аргумент: поскольку контент обслуживается с помощью gzip, минификация не имеет смысла. Это совершенно неверно. Да, имеет смысл, что gzip уменьшает улучшение минификации, но зачем вам gzip комментарии, пробелы, если вы можете правильно их обрезать и сжать только важную часть. Это то же самое, как если бы у вас есть папка для архивации, в которой есть какая-то хрень, которую вы никогда не будете использовать, и вы решили просто заархивировать ее, а не очищать и заархивировать.
Еще один аргумент в пользу бессмысленности минификации заключается в том, что это утомительно. Может быть, это было так в 2009 году, но после этого появились новые инструменты. Прямо сейчас вам не нужно вручную уменьшать разметку. Для таких вещей, как Grunt, довольно просто установить grunt-contrib-htmlmin (полагается на HTMLMinifier от @kangax) и настроить его для минимизации вашего html. Все, что вам нужно, это примерно 2 часа, чтобы выучить ворчание и все настроить, а затем все будет сделано автоматически менее чем за секунду. Похоже, что 1 секунда (которую вы даже можете автоматизировать, чтобы ничего не делать с помощью grunt-contrib-watch ) на самом деле не так уж и плоха для примерно 5% улучшения (даже с gzip).
Еще один аргумент заключается в том, что CSS и JS статичны , а HTML создается сервером, поэтому вы не можете его предварительно уменьшить. Так было и в 2009 году, но в настоящее время все больше и больше сайтов выглядят как одностраничные приложения, где сервер является тонким, а клиент выполняет всю маршрутизацию, шаблоны и другую логику. Таким образом, сервер предоставляет вам только JSON а клиент его отображает. Здесь много html для страницы и разных шаблонов.
Итак, чтобы закончить свои мысли:
<span>
). Прежде всего, вы всегда можете найти способ написать действительный html, сделав его независимым от пробелов. Также вы можете быть удивлены, узнав, что минификатор JS / CSS также может вносить ошибку, что не означает, что вы не должны его использовать. Итак, есть два способа решить вашу проблему: научиться писать разметку, не зависящую от пробелов, протестировать свой продукт до / после минификации (CSS / HTML / JS). Также в Minifier вы можете указать, какие пробелы вы хотите сохранить.
* { white-space: pre; }
очевиден, но если вы удаляете все пробелы, а не просто сворачиваете их (вместо этого заменяя их полями), текст может копироваться неправильно и нанести ущерб текстовым браузерам и программам чтения с экрана.
Я написал веб-инструмент для минимизации HTML. http://prettydiff.com/?m=minify&html
Этот инструмент работает по следующим правилам:
style
Предполагается, что тега является CSS и минимизируется как таковой.script
Предполагается, что весь контент внутри тега является JavaScript, если не указан другой тип мультимедиа, а затем минимизирован как таковой.<!--[if IE 8.0]><link rel="stylesheet" href="css/ie8.css" type="text/css" /><![endif]-->
Это сработало для меня:
http://minify.googlecode.com/git/min/lib/Minify/HTML.php
Это еще не доступный онлайн-инструмент, но, будучи простым включением PHP, вы можете просто запустить его самостоятельно.
Я бы не стал сохранять сжатые файлы, делаю это динамически, если вам действительно нужно, и всегда лучше включить сжатие сервера Gzip. Я не знаю, насколько это задействовано в IIS / .Net, но в PHP это так же тривиально, как добавление одной строки в глобальный включаемый файл.
CodeProject имеет опубликованный образец проекта ( http://www.codeproject.com/KB/aspnet/AspNetOptimizer.aspx?fid=1528916&df=90&mpp=25&noise=3&sort=Position&view=Quick&select=2794900 ) для обработки некоторых из следующих ситуаций. .
Для платформы Microsoft .NET существует библиотека WebMarkupMin , которая производит минификацию HTML-кода.
Кроме того, есть модуль для интеграции этой библиотеки в ASP.NET MVC - WebMarkupMin.Mvc .
попробуйте http://code.mini-tips.com/html-minifier.html , это .NET Libary для Html Minifier
HtmlCompressor - это небольшая, быстрая и очень простая в использовании библиотека .NET, которая минимизирует данный источник HTML или XML, удаляя лишние пробелы, комментарии и другие ненужные символы, не нарушая структуру содержимого. В результате страницы становятся меньше в размере и загружаются быстрее. Также доступна версия компрессора для командной строки.