<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Комментарии к записи: CSS оптимизация: пишем правила сокращенно</title>
	<atom:link href="http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/</link>
	<description>Веб дизайн, CSS, SEO, юзабилити. Уроки веб-мастерства</description>
	<lastBuildDate>Tue, 27 Jul 2010 21:56:01 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Автор: Автор</title>
		<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/comment-page-1/#comment-9482</link>
		<dc:creator>Автор</dc:creator>
		<pubDate>Sat, 24 Jan 2009 17:38:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/#comment-9482</guid>
		<description>Уже залила к себе и обновила ссылку в комментарии. Спасибо!</description>
		<content:encoded><![CDATA[<p>Уже залила к себе и обновила ссылку в комментарии. Спасибо!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Антон</title>
		<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/comment-page-1/#comment-9478</link>
		<dc:creator>Антон</dc:creator>
		<pubDate>Sat, 24 Jan 2009 13:59:22 +0000</pubDate>
		<guid isPermaLink="false">http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/#comment-9478</guid>
		<description>Да, тот самый, но тогда следовало бы перезалить архив из файлобменника на ваш сервер, что бы идея пожила по дольше.</description>
		<content:encoded><![CDATA[<p>Да, тот самый, но тогда следовало бы перезалить архив из файлобменника на ваш сервер, что бы идея пожила по дольше.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Автор</title>
		<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/comment-page-1/#comment-9459</link>
		<dc:creator>Автор</dc:creator>
		<pubDate>Fri, 23 Jan 2009 18:48:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/#comment-9459</guid>
		<description>Спасибо! Будем разбираться :) Код из комментария вставлять не стала, я так понимаю это тот самый скрипт на который вы дали ссылку?</description>
		<content:encoded><![CDATA[<p>Спасибо! Будем разбираться :) Код из комментария вставлять не стала, я так понимаю это тот самый скрипт на который вы дали ссылку?</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Антон</title>
		<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/comment-page-1/#comment-9452</link>
		<dc:creator>Антон</dc:creator>
		<pubDate>Fri, 23 Jan 2009 11:42:46 +0000</pubDate>
		<guid isPermaLink="false">http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/#comment-9452</guid>
		<description>Ну, тогда смотрите. Залил значит скрипт и библиотеку &lt;a href=&quot;http://www.getincss.ru/wp-content/uploads/2009/01/css_filter.rar&quot; rel=&quot;nofollow&quot;&gt;сюда&lt;/a&gt;. Сама библиотека PHP Simple HTML DOM Parser скачивается &lt;a href=&quot;http://sourceforge.net/projects/simplehtmldom&quot; rel=&quot;nofollow&quot;&gt;отсюда&lt;/a&gt;.

Теперь пояснения: 
Мне нравится запускать скрипты через один очень продвинутый блокнот - EmEditor. В котором есть возможность по клику или по хоткею запускать командную строку с именем открытого файла и тут же получить вывод инициированный этой камандной строкой, поэтому и скрипт заточен под использование командной строки. Цель, ради которой скрипт был написан - это фильтрация бесполезных стилей для заданного Html-документа, который на таблицу с этими стилями ссылается. Это полезно, когда надо перетащить понравившийся кусок приглянувшейся страницы в свою базу шаблонов, так как в ручную отфильтровать стили не реально, а если не фильтруя добавить одну таблицу к другой, то результат будет непредсказуем. 

Таким образом все, что нужно - это: 

1. открыть в EmEditor код понравившийся страницы (лучше из Оперы, она не ставит атрибут Readonly), 
2. отфильтровать лишние теги (это отдельная, но тоже решаемая задача), 
3. вставить в начало документа пустую строку и скопировать в нее url страницы,
4. запустить скрипт css_filtef,
5. получить список стилей,
6. перенести html и css в соответствующие шаблоны.

И все. Весь алгоритм html-плагиата. Если полученную CSS-таблицу и придется подредактировать, то это будет всего несколько строк. Поясню еще, что url страницы нужен скрипту для получения url домена, на котором лежат CSS-файлы. 

Скрипт делает следующее:
1. загружает html-документ из адреса, указанного в командной строке, 
2. пытается из первой строки поучить url домена, 
3. находит в html ссылки на CSS-файлы
4. загружает и парсит таблицы из CSS-файлов
5. создает из html DOM-объект
6. для каждого css-селектора пытается найти в DOM соответствующие элементы
7. если найдено соответствие, то соответствующая запись css-запись выводится
При этом к каждой записи (на всякий случай) добавляются пустые комментирующие скобки, так как CSS-парсер не реагирует на коментарии в селекторах и может выдать не закрытый комментарий, поэтому после каждого вывода комментарии закрываются принудительно.
Вот и все.</description>
		<content:encoded><![CDATA[<p>Ну, тогда смотрите. Залил значит скрипт и библиотеку <a href="http://www.getincss.ru/wp-content/uploads/2009/01/css_filter.rar" rel="nofollow">сюда</a>. Сама библиотека PHP Simple HTML DOM Parser скачивается <noindex><a title="http://sourceforge.net/projects/simplehtmldom" target="_blank" href="http://www.getincss.ru/go/http://sourceforge.net/projects/simplehtmldom" rel="nofollow">отсюда</a></noindex>.</p>
<p>Теперь пояснения:<br />
Мне нравится запускать скрипты через один очень продвинутый блокнот &#8211; EmEditor. В котором есть возможность по клику или по хоткею запускать командную строку с именем открытого файла и тут же получить вывод инициированный этой камандной строкой, поэтому и скрипт заточен под использование командной строки. Цель, ради которой скрипт был написан &#8211; это фильтрация бесполезных стилей для заданного Html-документа, который на таблицу с этими стилями ссылается. Это полезно, когда надо перетащить понравившийся кусок приглянувшейся страницы в свою базу шаблонов, так как в ручную отфильтровать стили не реально, а если не фильтруя добавить одну таблицу к другой, то результат будет непредсказуем. </p>
<p>Таким образом все, что нужно &#8211; это: </p>
<p>1. открыть в EmEditor код понравившийся страницы (лучше из Оперы, она не ставит атрибут Readonly),<br />
2. отфильтровать лишние теги (это отдельная, но тоже решаемая задача),<br />
3. вставить в начало документа пустую строку и скопировать в нее url страницы,<br />
4. запустить скрипт css_filtef,<br />
5. получить список стилей,<br />
6. перенести html и css в соответствующие шаблоны.</p>
<p>И все. Весь алгоритм html-плагиата. Если полученную CSS-таблицу и придется подредактировать, то это будет всего несколько строк. Поясню еще, что url страницы нужен скрипту для получения url домена, на котором лежат CSS-файлы. </p>
<p>Скрипт делает следующее:<br />
1. загружает html-документ из адреса, указанного в командной строке,<br />
2. пытается из первой строки поучить url домена,<br />
3. находит в html ссылки на CSS-файлы<br />
4. загружает и парсит таблицы из CSS-файлов<br />
5. создает из html DOM-объект<br />
6. для каждого css-селектора пытается найти в DOM соответствующие элементы<br />
7. если найдено соответствие, то соответствующая запись css-запись выводится<br />
При этом к каждой записи (на всякий случай) добавляются пустые комментирующие скобки, так как CSS-парсер не реагирует на коментарии в селекторах и может выдать не закрытый комментарий, поэтому после каждого вывода комментарии закрываются принудительно.<br />
Вот и все.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Автор: Автор</title>
		<link>http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/comment-page-1/#comment-9446</link>
		<dc:creator>Автор</dc:creator>
		<pubDate>Fri, 23 Jan 2009 05:46:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.getincss.ru/2008/05/14/css-optimizaciya-pishem-pravila-sokrashhenno/#comment-9446</guid>
		<description>Было бы интересно посмотреть :) Что понимается под бесполезными записями?</description>
		<content:encoded><![CDATA[<p>Было бы интересно посмотреть :) Что понимается под бесполезными записями?</p>
]]></content:encoded>
	</item>
</channel>
</rss>
