<blockquote> <p>кто-то сказал мне, что он запоминает неправильную работу браузера, когда между определенными тегами (а именно элементами ul и li) нет пробелов. это правда?</p> </blockquote><p>да, в определенных обстоятельствах, например, если элементы настроены на отображение <code>inline-block</code> или <code>inline</code>.</p><p>следующие два списка будут отображаться по-разному из-за пробелов между элементами <code><li></code>:</p><p><strong> html </strong></p><pre><code><ul> <li>simple</li> <li>list</li> </ul> <ul><li>minified</li><li>list</li></ul> </code></pre><p><strong> css </strong></p><pre><code>li { display: inline-block; background: blue; color: white; } </code></pre><p><strong> визуализированный вывод </strong></p><p><img src="https://i.stack.imgur.com/sg0mn.png" alt="enter image description here"></p><p> <a href="http://jsfiddle.net/uwv3e/">http://jsfiddle.net/uwv3e/</a> </p>

<p>минификация снижает удобство обслуживания ради ... обычно около 4-8 кб экономии на размере сайта. вы можете получить большую экономию, сжав один jpg на сайте и удалив метаданные изображения.</p><p>если вы не создаете веб-сайт с огромным количеством страниц, подстраниц и шаблонов и более чем 5000 строк css и js, вы обнаружите, что минимизация - это пустая трата усилий, особенно когда обслуживание вступает в игру, и вы должны храните незавершенные версии файлов, чтобы просто исправлять, минимизировать, перезаписывать минимизированные файлы новой версией, молиться, чтобы следующий парень, обслуживающий сайт, использовал тот же рабочий процесс и не вносил изменения в минимизированный css-файл, а затем, когда вы вернуться и уничтожить его изменения ...</p><p>я поднимаю это, потому что я видел, как это произошло. я сделал оценки gtmetrics и pingdom на сайтах до и после минификации, а оценка и скорость загрузки едва изменились, чтобы это того стоило.</p><p>я всегда называл минификацию "тратить доллары на копейки". ваши усилия могут быть лучше потрачены в другом месте на проект разработчика.</p>

<p>немного 
браузеры
 ie версии имеют проблемы с минимизированными объявлениями <code>font-face</code>, см .:</p><ul> <li> <a href="https://stackoverflow.com/questions/13274040/css-fonts-not-loading-in-ie9">шрифты css не загружаются в ie9</a> </li> <li> <a href="https://stackoverflow.com/questions/14986588/how-to-minify-css-with-font-face">как минимизировать css с помощью font-face</a> </li> </ul>

<blockquote> <p>кто-то сказал мне, что он запоминает неправильную работу браузера, когда между определенными тегами (а именно элементами ul и li) нет пробелов. это правда?</p> </blockquote><p>нет, это утверждение неверно. вот как браузеры должны работать в соответствии с <a href="https://www.w3.org/tr/html401/struct/text.html#h-9.1">спецификация html относительно пробелов</a> . любая последовательность пробелов (табуляции, новых строк, пробелов) означает одно и то же.</p><p>возьмите следующую разметку:</p><pre><code><ul> <li>a</li> <li>b</li> </ul> </code></pre><p>правильное минимизация этого после того, как также учтено <a href="https://www.w3.org/tr/html401/appendix/notes.html#h-b.3.1">правила разрыва строки sgml</a> заявив, что пробел после открывающего тега и перед закрывающим тегом можно игнорировать, тогда правильное минифкация будет:</p><pre><code><ul><li>a</li> <li>b</li></ul> </code></pre><p>если инструмент минимизации дал следующее, было бы уместно сказать, что минификатор был сломан.</p><pre><code><ul><li>a</li><li>b</li></ul> </code></pre><p>исключением из этого правила являются теги pre, которые задают предварительно отформатированный контент, и браузеры должны отображать все пробельные символы, и я предполагаю, что вам также необходимо оставить cdata как есть, поскольку он технически не является частью содержимого html.</p>