<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/rss2russianfull.xsl" type="text/xsl" media="screen"?><?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">

<channel>
	<title>Свобода слова вебмастерского</title>
	
	<link>http://dimox.name</link>
	<description>CSS-верстка, веб-мастеринг, интернет-технологии, манимейкинг</description>
	<pubDate>Mon, 17 Nov 2008 14:52:46 +0000</pubDate>
	
	<language>en</language>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feeds.feedburner.com/SupraBlog" type="application/rss+xml" /><feedburner:emailServiceId xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">699322</feedburner:emailServiceId><feedburner:feedburnerHostname xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://www.feedburner.com</feedburner:feedburnerHostname><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.rojo.com/add-subscription?resource=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://blog.rojo.com/RojoWideRed.gif">Subscribe with Rojo</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.bloglines.com/sub/http://feeds.feedburner.com/SupraBlog" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" href="http://lenta.yandex.ru/settings.xml?name=feed&amp;url=http%3A%2F%2Ffeeds.feedburner.com%2FSupraBlog" src="http://lenta.yandex.ru/i/addfeed.gif">?????? ? ??????.?????</feedburner:feedFlare><item>
		<title>jQuery-скрипт для авторастяжки текстового поля textarea</title>
		<link>http://dimox.name/jquery-textarea-auto-resizer/</link>
		<comments>http://dimox.name/jquery-textarea-auto-resizer/#comments</comments>
		<pubDate>Mon, 17 Nov 2008 14:52:46 +0000</pubDate>
		<dc:creator>Dimox</dc:creator>
		
		<category><![CDATA[Веб-мастеринг]]></category>

		<category><![CDATA[jQuery]]></category>

		<category><![CDATA[Автоматизация]]></category>

		<category><![CDATA[Скрипт]]></category>

		<guid isPermaLink="false">http://dimox.name/?p=851</guid>
		<description><![CDATA[Однажды я уже писал о таком скрипте, но он оказался не совершенен, и в результате я им так и не стал пользоваться. Однако задача найти подходящий скрипт для авторастяжки этого поля все-таки стояла передо мной.
И я нашел красивое решение, в виде jQuery-скрипта под названием jGrow. Проверял его в разных браузерах, в целом все нормально, заметил [...]]]></description>
			<content:encoded><![CDATA[<p>Однажды я уже <a href="http://dimox.name/auto-sizing-textarea-field/">писал о таком скрипте</a>, но он оказался не совершенен, и в результате я им так и не стал пользоваться. Однако задача найти подходящий скрипт для авторастяжки этого поля все-таки стояла передо мной.</p>
<p>И я нашел красивое решение, в виде <a href="http://lab.berkerpeksag.com/jGrow" target="_blank">jQuery-скрипта под названием jGrow</a>. Проверял его в разных браузерах, в целом все нормально, заметил только один недочет - в Опере появляется горизонтальная прокрутка.</p>
<p>Размер самого скрипта совсем небольшой, выглядит вот так:</p>
<div class="codecolorer-container javascript"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="kw2">var</span> $j = jQuery.<span class="me1">noConflict</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">$j.<span class="me1">fn</span>.<span class="me1">jGrow</span> = <span class="kw2">function</span><span class="br0">&#40;</span>options<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw2">var</span> opts = $j.<span class="me1">extend</span><span class="br0">&#40;</span><span class="br0">&#123;</span><span class="br0">&#125;</span>, $j.<span class="me1">fn</span>.<span class="me1">jGrow</span>.<span class="me1">defaults</span>, options<span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw1">return</span> <span class="kw1">this</span>.<span class="me1">each</span><span class="br0">&#40;</span><span class="kw2">function</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; $j<span class="br0">&#40;</span><span class="kw1">this</span><span class="br0">&#41;</span>.<span class="me1">css</span><span class="br0">&#40;</span><span class="br0">&#123;</span> overflow: <span class="st0">&quot;hidden&quot;</span> <span class="br0">&#125;</span><span class="br0">&#41;</span>.<span class="me1">bind</span><span class="br0">&#40;</span><span class="st0">&quot;keypress&quot;</span>, <span class="kw2">function</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; $this = $j<span class="br0">&#40;</span><span class="kw1">this</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="kw2">var</span> o = $j.<span class="me1">meta</span> ? $j.<span class="me1">extend</span><span class="br0">&#40;</span><span class="br0">&#123;</span><span class="br0">&#125;</span>, opts, $this.<span class="me1">data</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span> : opts;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span>o.<span class="me1">rows</span> == <span class="nu0">0</span> <span class="sy0">&amp;&amp;</span> <span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">scrollHeight</span> <span class="sy0">&gt;</span> <span class="kw1">this</span>.<span class="me1">clientHeight</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">this</span>.<span class="me1">rows</span> += <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="kw1">if</span><span class="br0">&#40;</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">rows</span> <span class="sy0">&lt;</span>= o.<span class="me1">rows</span><span class="br0">&#41;</span> <span class="sy0">&amp;&amp;</span> <span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">scrollHeight</span> <span class="sy0">&gt;</span> <span class="kw1">this</span>.<span class="me1">clientHeight</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">this</span>.<span class="me1">rows</span> += <span class="nu0">1</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="kw1">if</span><span class="br0">&#40;</span>o.<span class="me1">rows</span> <span class="sy0">!</span>= <span class="nu0">0</span> <span class="sy0">&amp;&amp;</span> <span class="kw1">this</span>.<span class="me1">rows</span> <span class="sy0">&gt;</span> o.<span class="me1">rows</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; $this.<span class="me1">css</span><span class="br0">&#40;</span><span class="br0">&#123;</span> overflow: <span class="st0">&quot;auto&quot;</span> <span class="br0">&#125;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; $this.<span class="me1">html</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1">&nbsp; <span class="br0">&#125;</span><span class="br0">&#41;</span>;</div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">$j.<span class="me1">fn</span>.<span class="me1">jGrow</span>.<span class="me1">defaults</span> = <span class="br0">&#123;</span> rows: <span class="nu0">0</span> <span class="br0">&#125;</span>;</div></li>
<li class="li1"><div class="de1">$j<span class="br0">&#40;</span>document<span class="br0">&#41;</span>.<span class="me1">ready</span><span class="br0">&#40;</span><span class="kw2">function</span><span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> $j<span class="br0">&#40;</span><span class="st0">&quot;#comment&quot;</span><span class="br0">&#41;</span>.<span class="me1">jGrow</span><span class="br0">&#40;</span><span class="br0">&#123;</span> rows: <span class="nu0">25</span> <span class="br0">&#125;</span><span class="br0">&#41;</span>; <span class="br0">&#125;</span><span class="br0">&#41;</span></div></li></ol></div></div>
<p>Здесь нам интересна в плане настроек лишь последняя строка, а, вернее, вот эта ее часть:</p>
<div class="codecolorer-container javascript" style="height:37px;"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1">$j<span class="br0">&#40;</span><span class="st0">&quot;#comment&quot;</span><span class="br0">&#41;</span>.<span class="me1">jGrow</span><span class="br0">&#40;</span><span class="br0">&#123;</span> rows: <span class="nu0">25</span> <span class="br0">&#125;</span><span class="br0">&#41;</span>;</div></li></ol></div></div>
<p><tt>#comment</tt> - это идентификатор поля textarea, к которому хотим прицепить скрипт.<br />
<tt>rows: 25</tt> - максимальное количество строк, до которых будет происходить авторастяжка. Если содержимое поля станет больше этого количества строк, то появляется прокрутка.</p>
<p>Если сделать вот так:</p>
<div class="codecolorer-container javascript" style="height:37px;"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1">$j<span class="br0">&#40;</span><span class="st0">&quot;#comment&quot;</span><span class="br0">&#41;</span>.<span class="me1">jGrow</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div></li></ol></div></div>
<p>то снимается ограничение на максимальную высоту textarea, т.е., в зависимости от количества текста, это поле может растягиваться бесконечно.</p>
<p>Прошу заметить следующий момент. Cрипт не работает, если тегу <tt>&lt;textarea></tt> задана высота через CSS, поэтому взамен нужно воспользоваться параметром <tt>rows</tt>:</p>
<div class="codecolorer-container html" style="height:37px;"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="sc2"><span class="kw2">&lt;textarea</span> <span class="kw3">name</span><span class="sy0">=</span><span class="st0">&quot;comment&quot;</span> <span class="kw3">id</span><span class="sy0">=</span><span class="st0">&quot;comment&quot;</span> <span class="kw3">cols</span><span class="sy0">=</span><span class="st0">&quot;70&quot;</span> <span class="kw3">rows</span><span class="sy0">=</span><span class="st0">&quot;8&quot;</span><span class="kw2">&gt;</span></span><span class="sc2"><span class="kw2">&lt;/textarea&gt;</span></span></div></li></ol></div></div>
<p>Протестировать работу скрипта авторастяжки можно прямо на моем блоге.</p>
<p>Надеюсь, кому-то пригодится.</p>
<hr noshade style="margin:0;height:1px" />
<p>© Dimox, <a href="http://dimox.name">Свобода слова вебмастерского</a>, 2008. |
<a href="http://dimox.name/jquery-textarea-auto-resizer/">Permalink</a></p><img src="http://feeds.feedburner.com/~r/SupraBlog/~4/456057572" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://dimox.name/jquery-textarea-auto-resizer/feed/</wfw:commentRss>
		<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetItemData?uri=SupraBlog&amp;itemurl=http%3A%2F%2Fdimox.name%2Fjquery-textarea-auto-resizer%2F</feedburner:awareness></item>
		<item>
		<title>Верстаем кроссбраузерный “резиновый” макет страницы</title>
		<link>http://dimox.name/cross-browser-liquid-layout/</link>
		<comments>http://dimox.name/cross-browser-liquid-layout/#comments</comments>
		<pubDate>Sat, 08 Nov 2008 18:14:31 +0000</pubDate>
		<dc:creator>Dimox</dc:creator>
		
		<category><![CDATA[CSS-верстка]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[Internet Explorer]]></category>

		<category><![CDATA[XHTML]]></category>

		<category><![CDATA[Браузер]]></category>

		<category><![CDATA[Верстка]]></category>

		<guid isPermaLink="false">http://dimox.name/?p=850</guid>
		<description><![CDATA[Как вы уже могли заметить, страницы моего блога некоторое время назад стали &#8220;резиновыми&#8221;. Довольно нетривиальная для меня, скажу я вам, ситуация, с которой, на мой взгляд, я справился лишь на четверку. Поэтому пишу данный пост с целью поиска наилучшего решения с вашей помощью, уважаемые читатели и коллеги по цеху =)
Итак&#8230;
Задача - создать кроссбраузерный &#8220;резиновый&#8221; макет [...]]]></description>
			<content:encoded><![CDATA[<p>Как вы уже могли заметить, страницы <a href="http://dimox.name/">моего блога</a> некоторое время назад стали &#8220;резиновыми&#8221;. Довольно нетривиальная для меня, скажу я вам, ситуация, с которой, на мой взгляд, я справился лишь на четверку. Поэтому пишу данный пост с целью поиска наилучшего решения с вашей помощью, уважаемые читатели и коллеги по цеху =)</p>
<p>Итак&#8230;</p>
<p><strong>Задача</strong> - создать кроссбраузерный &#8220;резиновый&#8221; макет с правосторонним сайдбаром, в котором (макете) колонка с контентом при разрешениях экрана 1280&#215;1024 и выше визуально располагалась бы примерно по центру окна браузера.</p>
<h3>Особенности</h3>
<ul>
<li>&#8220;Резиновый&#8221; макет. Растяжка должна происходить за счет колонки с контентом.</li>
<li>Прижать все содержимое страницы к правому краю окна браузера при разрешениях экрана 1280&#215;1024 и ниже.</li>
<li>Слева сделать динамический отступ с целью визуально отцентрировать контент (только на разрешениях 1280&#215;1024 и выше).</li>
<li>Ограничить максимальную ширину страницы для больших разрешений экрана (в моем примере - 1300 пикселей).</li>
<li>Добиться кроссбраузерности.</li>
<li>Использовать минимальное количество тегов, скриптов и хаков.</li>
</ul>
<p>Если говорить только о современных браузерах (Opera, FireFox, Safari, Chrome, IE8b2), то они вообще не создают никаких проблем, и поставленная задача в них решается налегке, даже в IE7 все работает со стандартными стилями. <strong>Проблема заключается, как обычно, в IE6</strong>, поэтому, собственно, вся работа сворачивается к изобретению &#8220;костылей&#8221; для этого браузера.</p>
<h3>Примеры</h3>
<p>То, что получилось у меня, вы можете наблюдать прямо на <a href="http://dimox.name/">моем блоге</a>, либо посмотреть <a href="http://dimox.name/examples/cross-browser-liquid-layout.html">отдельно созданный пример</a>.</p>
<p>Максимум, что мне удалось сделать для IE6 - применить <tt>expression</tt> на минимальную и максимальную ширину, но результат оставляет желать лучшего - при сужении/расширении окна браузера он ведет себя неадекватно.</p>
<p>В общем, взываю к вашей помощи, уважаемые коллеги ;) Помогите, пожалуйста, красиво решить задачу.</p>
<p><strong>P.S.</strong> По секрету всему свету - возлагаю большие надежды на <a href="http://trifler.ru/blog/" target="_blank">Сергея</a>, поскольку знаю, что он подобные вещи решает на &#8220;ура!&#8221; =)</p>
<hr noshade style="margin:0;height:1px" />
<p>© Dimox, <a href="http://dimox.name">Свобода слова вебмастерского</a>, 2008. |
<a href="http://dimox.name/cross-browser-liquid-layout/">Permalink</a></p><img src="http://feeds.feedburner.com/~r/SupraBlog/~4/446700466" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://dimox.name/cross-browser-liquid-layout/feed/</wfw:commentRss>
		<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetItemData?uri=SupraBlog&amp;itemurl=http%3A%2F%2Fdimox.name%2Fcross-browser-liquid-layout%2F</feedburner:awareness></item>
		<item>
		<title>Простейший скрипт для реализации hover-эффекта для любого элемента в Internet Explorer 6</title>
		<link>http://dimox.name/simple-ie6-hover-script/</link>
		<comments>http://dimox.name/simple-ie6-hover-script/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 09:41:36 +0000</pubDate>
		<dc:creator>Dimox</dc:creator>
		
		<category><![CDATA[CSS-верстка]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[Internet Explorer]]></category>

		<category><![CDATA[JavaScript]]></category>

		<category><![CDATA[Скрипт]]></category>

		<guid isPermaLink="false">http://dimox.name/?p=849</guid>
		<description><![CDATA[Несмотря на то, что данное решение уже опубликовано в РУнете не мной, я просто не могу не написать о нем, т.к. решение, на мой взгляд, достойно внимания, и нужно его популяризовать посредством моего блога.
Я постоянно слежу за материалами по HTML и CSS верстке, но почему-то до недавнего времени мне нигде не попался простейший способ создания [...]]]></description>
			<content:encoded><![CDATA[<p>Несмотря на то, что данное решение уже опубликовано в РУнете не мной, я просто не могу не написать о нем, т.к. решение, на мой взгляд, достойно внимания, и нужно его популяризовать посредством моего блога.</p>
<p>Я постоянно слежу за материалами по HTML и CSS верстке, но почему-то до недавнего времени мне нигде не попался <strong>простейший способ создания ховер-эффекта</strong> (<tt>:hover</tt>) в самом часто упоминаемом веб-разработчиками <strong>браузере IE6</strong>, который, как мы знаем, данный селектор поддерживает только для тега ссылки <tt>&lt;a></tt>.</p>
<p>Не знаю, то ли это решение объективно считается не таким уж хорошим, то ли я хожу не теми дорогами Интернета, но я лишь месяц назад увидел его в <a href="http://trifler.ru/blog/post_1222107042.html" target="_blank">блоге Сергея Гордиенко</a>, который, как оказалась, пользуется этим скриптом уже давно (а со мной не поделился =).</p>
<p>До сей поры мне приходилось применять громоздкие скрипты, данный же скрипт состоит из всего лишь 6 строк:</p>
<div class="codecolorer-container javascript"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="sy0">&lt;</span>attach <span class="kw1">for</span>=element event=onmouseover handler=topm<span class="sy0">&gt;</span></div></li>
<li class="li1"><div class="de1"><span class="sy0">&lt;</span>attach <span class="kw1">for</span>=element event=onmouseout handler=verm<span class="sy0">&gt;</span></div></li>
<li class="li1"><div class="de1"><span class="sy0">&lt;</span>script<span class="sy0">&gt;</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw2">function</span> topm<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span>element.<span class="me1">className</span>=<span class="st0">'hover'</span>;<span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw2">function</span> verm<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span>element.<span class="me1">className</span>=<span class="st0">''</span>;<span class="br0">&#125;</span></div></li>
<li class="li1"><div class="de1"><span class="sy0">&lt;/</span>script<span class="sy0">&gt;</span></div></li></ol></div></div>
<p>Наверное, его можно и в одну строку вытянуть =), суть не в этом, главное, что его размер ничтожно мал по сравнению с альтернативными решениями, известными мне на сегодняшний день.</p>
<p>Данный скрипт нужно сохранить в файл с любым названием, но обязательно с расширением <strong>.htc</strong>, например, ie6hover.htc.</p>
<h3>Как пользоваться скриптом</h3>
<p>Для начала его необходимо подключить к файлу стилей, например, так (если нужно предусмотреть возможность его применения к любому html-элементу):</p>
<div class="codecolorer-container css" style="height:37px;"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1"><span class="sy0">*</span> <span class="br0">&#123;</span>behavior<span class="re2">:url</span><span class="br0">&#40;</span><span class="st0">&quot;ie6hover.htc&quot;</span><span class="br0">&#41;</span><span class="br0">&#125;</span></div></li></ol></div></div>
<p>Либо, например, вот так (если хотим его применить только к конкретному элементу):</p>
<div class="codecolorer-container css" style="height:37px;"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1">li <span class="br0">&#123;</span>behavior<span class="re2">:url</span><span class="br0">&#40;</span><span class="st0">&quot;ie6hover.htc&quot;</span><span class="br0">&#41;</span><span class="br0">&#125;</span></div></li></ol></div></div>
<p>А непосредственно реализация ховер-эффекта делается следующим образом. Например, если это меню с выпадающим списком:</p>
<div class="codecolorer-container css"><div class="codecolorer" style="font-family: monospace;"><ol><li class="li1"><div class="de1">li<span class="re2">:hover</span> ul<span class="sy0">,</span> <span class="coMULTI">/* для современных браузеров */</span></div></li>
<li class="li1"><div class="de1">li<span class="re1">.hover</span> ul <span class="br0">&#123;</span> <span class="coMULTI">/* для Internet Explorer 6 */</span></div></li>
<li class="li1"><div class="de1">&nbsp; <span class="kw1">display</span><span class="sy0">:</span> <span class="kw2">block</span></div></li>
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li></ol></div></div>
<p>Обратите внимание, что класс <tt>.hover</tt> - это то, что прописано в самом скрипте. По желанию, название этого класса можно заменить.</p>
<p>Как видите, все максимально просто.</p>
<hr noshade style="margin:0;height:1px" />
<p>© Dimox, <a href="http://dimox.name">Свобода слова вебмастерского</a>, 2008. |
<a href="http://dimox.name/simple-ie6-hover-script/">Permalink</a></p><img src="http://feeds.feedburner.com/~r/SupraBlog/~4/437868962" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://dimox.name/simple-ie6-hover-script/feed/</wfw:commentRss>
		<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetItemData?uri=SupraBlog&amp;itemurl=http%3A%2F%2Fdimox.name%2Fsimple-ie6-hover-script%2F</feedburner:awareness></item>
		<item>
		<title>Dimox - IT-извращенец</title>
		<link>http://dimox.name/dimox-it-izvrashhenec/</link>
		<comments>http://dimox.name/dimox-it-izvrashhenec/#comments</comments>
		<pubDate>Tue, 28 Oct 2008 14:33:00 +0000</pubDate>
		<dc:creator>Dimox</dc:creator>
		
		<category><![CDATA[Веб-мастеринг]]></category>

		<category><![CDATA[jQuery]]></category>

		<category><![CDATA[Opera]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[Скрипт]]></category>

		<category><![CDATA[Фреймворк]]></category>

		<guid isPermaLink="false">http://dimox.name/?p=848</guid>
		<description><![CDATA[Если в нескольких словах - я запихал в Оперу (браузер) фреймворк jQuery. Ниже подробнее об этом, и что в том хорошего.
Есть такая замечательная технология UserJS, которую поддерживает мой любимый браузер Opera и, насколько мне известно, все браузеры на движке Gecko, а это такие, как, например, Mozilla Firefox, Netscape, Flock, SeaMonkey, Camino, K-Meleon.
И есть замечательный фреймворк [...]]]></description>
			<content:encoded><![CDATA[<p>Если в нескольких словах - я запихал в Оперу (браузер) фреймворк jQuery. Ниже подробнее об этом, и что в том хорошего.</p>
<p>Есть такая замечательная технология UserJS, которую поддерживает мой любимый браузер Opera и, насколько мне известно, все браузеры на движке Gecko, а это такие, как, например, Mozilla Firefox, Netscape, Flock, SeaMonkey, Camino, K-Meleon.</p>
<p>И есть замечательный фреймворк jQuery, который, похоже, еще не раз будет упомянут на этом блоге (уж очень он мне полюбился).</p>
<p>Совсем недавно у меня в голове созрело следующее желание: поскольку jQuery мне, как верстальщику, хорошо знакомому с технологией CSS, довольно просто дается в изучении (чего я не скажу про язык JavaScript), захотелось встроить его в Оперу, чтобы написать некоторые скрипты, которые загружались бы <strong>только с моего компьютера</strong> - потребность в таких скриптах я довольно часто ощущаю в последнее время.</p>
<p>Как оказалось, <strong>встроить jQuery в Оперу проще пареной репы</strong> - достаточно создать новый UserJS-файл и запихать в него сам фреймворк, после чего можно писать сколько угодно скриптов на jQuery (я говорю &#8220;Опера&#8221;, т.к. только в ней это делал, но, я так полагаю, в браузерах на движке Gecko должно быть аналогично). Главное при этом - обозвать UserJS-файл с фреймворком таким образом, чтобы при сортировке по имени он находился в списке выше файлов с jQuery-скриптами.</p>
<p>Вот реальный пример того, как я использовал такую интеграцию.</p>
<p>В одном из моих предыдущих постов мне <a href="http://dimox.name/wordpress-admin-menu-and-authorization/#comment-4391">подсказали</a> про потрясающий плагин Login-box для WordPress, который сделан на jQuery и позволяет по горячей клавише загружать всплывающее окно с формой авторизации. За эту информацию большое спасибо <a href="http://lilumi.org.ua/" target="_blank">lilumi</a>.</p>
<p>Я легко &#8220;выудил&#8221; скрипт из плагина, в него же запихнул html-код самой формы и весьма доволен результатом. Теперь очень удобно авторизовываться на моих сайтах, нажимая комбинацию Ctrl+E.</p>
<p><strong>Плюсы подобной интеграции</strong> я вижу следующие:</p>
<ol>
<li>Нагрузка, требуемая для обработки скрипта, переносится на мой компьютер, а не на компьютеры посетителей, которые этой формой на моем сайте никогда не будут пользоваться (хотя, возможно, эта нагрузка и совсем незначительная).</li>
<li>Размер страницы уменьшается (на примере плагина Login-box), т.к. из кода страниц блога исчезает дополнительный код, который стандартно создается плагином. А раз форма авторизации требуется лишь администратору/владельцу сайта, то было бы логичным для всех остальных посетителей исключить подгрузку кода формы в страницы сайта.</li>
<li>То же самое касается и jQuery-скрипта (на примере плагина Login-box), который подключается к странице через мета-тег. Т.е., благодаря исключению скрипта, страница для посетителя еще несколько уменьшится.</li>
<li>Удобное подключение скрипта одновременно на множество сайтов. В скрипте, интегрированном в браузер, достаточно прописать соответствующие домены, плагин же нужно ставить на каждый домен.</li>
<li>Ну и исчезает необходимость после каждого изменения скрипта (пусть даже и не частого) залазить на фтп, чтобы его там обновить.</li>
</ol>
<p>Таким вот образом я использую несколько jQuery-скриптов, загружаемых только с моего компьютера (про один из них я уже <a href="http://dimox.name/nevidimyj-spam-v-kommentariyax-ssylki-na-probelax/">писал</a>). Все они созданы для изменения или добавления того или иного функционала в WordPress.</p>
<p><strong>P.S.</strong> Если найдутся желающие, отдельным постом могу выложить скрипт для WordPress-авторизации, о котором написал выше.</p>
<hr noshade style="margin:0;height:1px" />
<p>© Dimox, <a href="http://dimox.name">Свобода слова вебмастерского</a>, 2008. |
<a href="http://dimox.name/dimox-it-izvrashhenec/">Permalink</a></p><img src="http://feeds.feedburner.com/~r/SupraBlog/~4/434773865" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://dimox.name/dimox-it-izvrashhenec/feed/</wfw:commentRss>
		<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetItemData?uri=SupraBlog&amp;itemurl=http%3A%2F%2Fdimox.name%2Fdimox-it-izvrashhenec%2F</feedburner:awareness></item>
		<item>
		<title>Переключатель размера шрифта сайта на jQuery</title>
		<link>http://dimox.name/jquery-style-switcher/</link>
		<comments>http://dimox.name/jquery-style-switcher/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 11:42:04 +0000</pubDate>
		<dc:creator>Dimox</dc:creator>
		
		<category><![CDATA[Веб-мастеринг]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[jQuery]]></category>

		<category><![CDATA[Скрипт]]></category>

		<guid isPermaLink="false">http://dimox.name/?p=847</guid>
		<description><![CDATA[Те мои постоянные читатели, кто заходят на блог, наверняка уже заметили, что его контентная часть несколько преобразилась: во-первых, фиксированная ширина этого блока изменена на динамическую (кстати, на эту тему скоро будет написан пост с целью выявления красивого решения), во-вторых, над сайдбаром появилась фича &#8220;Размер шрифта&#8221;, с помощью которой можно выбрать один из 4-х предопределенных мною [...]]]></description>
			<content:encoded><![CDATA[<p>Те мои постоянные читатели, кто заходят на <a href="http://dimox.name/">блог</a>, наверняка уже заметили, что его контентная часть несколько преобразилась: <strong>во-первых</strong>, фиксированная ширина этого блока изменена на динамическую (кстати, на эту тему скоро будет написан пост с целью выявления красивого решения), <strong>во-вторых</strong>, над сайдбаром появилась фича &#8220;Размер шрифта&#8221;, с помощью которой можно выбрать один из 4-х предопределенных мною размеров шрифта для контентной части.</p>
<p>О реализации последней фичи я и хочу поведать в текущем посте.</p>
<p>Почему я вообще решил сделать подобное? Потому что, во-первых, устали глаза от 13-пиксельного размера шрифта, во-вторых, захотелось универсальности, чтобы посетители могли сами выбрать для себя наиболее удобный размер, в-третьих, к этому подтолкнул сайт alexking.org, на котором тоже реализована подобная вещица.</p>
<p>Поскольку на блоге я уже во всю использую jQuery, соответственно искал решения на нем же, ведь на jQuery код сводится к минимуму (если не считать сам фреймворк). В результате я нашел <strong>2 возможных варианта</strong>:</p>
<ol>
<li><a href="http://www.kelvinluck.com/article/switch-stylesheets-with-jquery" target="_blank">Switch stylesheets with jQuery</a> - здесь механизм следующий: для каждого состояния необходимо использовать отдельный файл стилей, и все это дело работает с использованием куков, чтобы после переключения страниц сайта или <strong>даже после закрытия браузера</strong> кука не удалялась, и при последующем заходе на сайт выбор пользователя сохранился.</li>
<li><a href="http://snipplr.com/view/4483/jquery-simple-style-switcher/" target="_blank">jQuery Simple Style Switcher</a> - здесь интересно то, что все стили записываются в один файл и переключение между ними происходит за счет дополнительного родительского класса, применяемого к тегу <tt>&lt;body></tt>.</li>
</ol>
<p>Мне очень нужен был <strong>второй вариант</strong> (стилей немного, поэтому нет смысла выносить их в отдельные файлы), однако в нем не было куков, которые есть в первом варианте. Поэтому стояла цель - скрестить оба решения.</p>
<p>Снова говорю &#8220;Спасибо!&#8221; моему знакомому программисту, благородному спасителю =), который быстро справился с поставленной задачей.</p>
<p>Дабы не увеличивать и без того получившийся длинным пост, сразу, без всякого кода, предлагаю вам скачать полностью рабочий пример. Ну а <strong>живой пример</strong> вы можете наблюдать прямо на блоге.</p>
<h3>Скачать</h3>
<div class="download">
<h4><a href="http://dimox.name/download-manager.php?id=35">Переключатель размера шрифта сайта на jQuery</a></h4>
<p><strong>Загрузок:</strong>  155 | <strong>Размер:</strong> 19 Кб</p>
</div>
<p>Стили нужно будет задать только для 3-х переключателей (если говорить о моем примере), поскольку для 4-го используются стили по умолчанию. Переключателей можно сделать столько, сколько вам нужно, все дополнительные делаются по аналогии.</p>
<p><strong>P.S.</strong> Прежде чем приделать к блогу &#8220;Размер шрифта&#8221;, я проверял его работу в разных браузерах, как то: IE6, IE7, IE8b2, FF2, FF3, Opera 9.5+, Chrome. Safari. Поэтому, если в вашем браузере НЕ отключены куки (cookie) и JavaScript и переключение стилей все-таки не работает, то я не в силах что-либо изменить.</p>
<hr noshade style="margin:0;height:1px" />
<p>© Dimox, <a href="http://dimox.name">Свобода слова вебмастерского</a>, 2008. |
<a href="http://dimox.name/jquery-style-switcher/">Permalink</a></p><img src="http://feeds.feedburner.com/~r/SupraBlog/~4/422580021" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://dimox.name/jquery-style-switcher/feed/</wfw:commentRss>
		<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetItemData?uri=SupraBlog&amp;itemurl=http%3A%2F%2Fdimox.name%2Fjquery-style-switcher%2F</feedburner:awareness></item>
	<feedburner:awareness xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">http://api.feedburner.com/awareness/1.0/GetFeedData?uri=SupraBlog</feedburner:awareness></channel>
</rss>
