Intereting Posts
Код jQuery работает только при обновлении страницы jQuery получить все значения множественного выбора, а не только выбранные Как заставить функцию директивной ссылки работать только один раз Выпадающие элементы списка по-прежнему доступны, когда непрозрачность равна нулю Переполнение текста из div с помощью transform: rotate (xdeg) Получить переменную из файла PHP с помощью JQuery / AJAX Как использовать другую версию JQuery в JS-файле? передача данных формы на другую страницу HTML HTML, выровняйте два элемента по обе стороны одной и той же линии Изменение цвета фона таблицы через jQuery AJAX? Создание тела электронной почты HTML в C # BlockUI заставляет все элементы центрировать Экранные диаграммы: диаграмма не изменяет размер, уменьшая экран Как добавить добавление изображения в виде стрелки вниз? Как я могу получить определенное число детей с помощью CSS?

Минимизирует ваш HTML, CSS и Javascript плохую идею?

Википедия определяет минимизацию как …

[…] процесс удаления всех ненужных символов из исходного кода без изменения его функциональности. Эти ненужные символы обычно include символы пробела, новые символы линий, комментарии и иногда блокируют разделители, которые используются для добавления читаемости в код, но не требуются для его выполнения.

В настоящее время я делаю это с моим HTML, CSS и Javascript, чтобы сохранить пропускную способность, но кто-то сказал мне, что он помнит, как браузер ошибочно работает, когда между определенными тегами нет белых пробелов (а именно ul и li items). Это правда?

Есть ли заметные браузеры, прокси или другие пользовательские агенты, которые плохо себя ведут при работе с мини-кодом?

Помимо потери читаемости при просмотре источника, есть ли другой недостаток для минимизации?

кто-то сказал мне, что он помнит, как браузер ошибается, когда между определенными тегами нет белых пробелов (а именно ul и li items). Это правда?

Да, в определенных обстоятельствах, например, если элементы установлены для отображения inline-block или inline .

Следующие два списка будут отображаться по-разному из-за пробелов между элементами

  • :

    HTML

     
    • simple
    • list
    • minified
    • list

    CSS

     li { display: inline-block; background: blue; color: white; } 

    рендеринг

    введите описание изображения здесь

    http://jsfiddle.net/Uwv3e/

    Минимизирует ваш HTML , CSS и Javascript плохую идею? Да, конечно!

    Однако хорошей идеей является минимизация CSS и Javascript

    Зачем?

    • Работа по минимизации осуществляется путем (a) замены имен переменных для чтения для компактных имен, таких как «mySuperTollesFunctionCall ()» на «m ()» и (b) Удаление пробелов
    • В вашем JavaScript вы можете воспользоваться как (а), так и (б)
    • Ваш CSS может только выиграть от (б)
    • Ваш код HTML, теоретически, может быть полезен только из (б), но это просто не стоит попробовать.

    Любой простой хороший редактор HTML может с легкостью отформатировать ваш HTML-файл для вас. Соблюдайте пробелы внутри блоков «pre», дайте нам подсказку о соответствии W3C и т. Д. И т. Д. И т. Д.

    Если вас беспокоит размер вашего HTML-файла … Вы должны включить сжатие статических файлов GZIP на вашем веб-сервере, большинство живых окаменелостей справятся с этим, и ваши клиенты оценят его.

    http://www.schroepl.net/projekte/mod_gzip/browser.htm

    Минимизация удаляет ремонтопригодность ради … обычно около 4-8кБ экономии на размере сайта. Вы можете получить больше экономии за счет сжатия одного jpg на сайте и удаления метаданных изображения.

    Если вы не создаете веб-сайт, на котором есть МАССИВНОЕ количество страниц и подстраниц и шаблонов, а также более 5000 строк CSS и JS, вы обнаружите, что минимизация – это пустая трата усилий, особенно когда обслуживание приходит в игру, и вы должны сохраняйте неограниченные версии файлов, плавающих вокруг, чтобы делать исправления, минимизировать, перезаписывать мини-файлы с новой версией, молиться, чтобы следующий парень, который поддерживает сайт, использует один и тот же рабочий процесс и не вносит изменений в мини-файл CSS, а затем, когда вы вернуться и уничтожить его изменения …

    Я поднимаю это, потому что я видел, как это происходит. Я делал оценки GTmetrics и Pingdom на сайтах pre и post minification, и оценка и скорость загрузки едва меняются настолько, что это стоит того.

    Я всегда называл минерализацию «Траты долларов на спасение копейки». Ваши усилия могут быть лучше потрачены в другом месте на проект Dev.

    Некоторые версии браузеров IE имеют проблемы с мини font-face объявлениями font-face , см.

    • CSS-шрифты не загружаются в IE9
    • Как минимизировать CSS с помощью шрифта

    кто-то сказал мне, что он помнит, как браузер ошибается, когда между определенными тегами нет белых пробелов (а именно ul и li items). Это правда?

    Это утверждение неверно. Это то, как браузеры должны работать в соответствии со спецификацией HTML в отношении пробелов . Любая последовательность пробелов (табуляции, новые строки, пробелы) означает одно и то же.

    Возьмите следующую разметку:

     
    • A
    • B

    Правильная оценка этого, также принимая во внимание правила разрыва строки SGML, указывающие, что пробелы после тега открытия и перед закрывающим тегом могут быть проигнорированы, правильная мини-передача будет:

     
    • A
    • B

    Если инструмент минимизации дал следующее, было бы уместно сказать, что минификатор был сломан.

     
    • A
    • B

    Исключением из этого правила являются tags PRE, которые определяют предварительно отформатированный контент, а браузеры должны отображать все пробельные символы, и я бы хотел, чтобы вы оставили CDATA, поскольку это технически не является частью содержимого HTML.