<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Каскадика</title>
	<atom:link href="http://cascadi.ca/feed/" rel="self" type="application/rss+xml" />
	<link>http://cascadi.ca</link>
	<description>Парад тегов</description>
	<lastBuildDate>Thu, 04 Mar 2010 20:30:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0-alpha</generator>
		<item>
		<title>CSS-хаки для IE 8</title>
		<link>http://cascadi.ca/css/ie8-css-hacks/</link>
		<comments>http://cascadi.ca/css/ie8-css-hacks/#comments</comments>
		<pubDate>Mon, 11 May 2009 13:46:45 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=154</guid>
		<description><![CDATA[Продолжаем тему Internet Explorer 8. Освоим CSS-хаки:
1. Быстрое решение:
.ie8only { color /*\**/: #fff\9 }
Работает только в Standards Mode
2. Более разумный подход к вопросу:
В файле стилей для IE, подключеном через условный комментарий создаем такую структуру:
html&#62;/**/body #id { property: value; }
Почему именно&#160;&#8230; <a href="http://cascadi.ca/css/ie8-css-hacks/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Продолжаем тему Internet Explorer 8. Освоим CSS-хаки:</p>
<p><strong>1. Быстрое решение:</strong></p>
<pre><code>.ie8only { color /*\**/: #fff\9 }</code></pre>
<p>Работает только в Standards Mode</p>
<p><strong>2. Более разумный подход к вопросу:</strong></p>
<p>В файле стилей для IE, подключеном через условный комментарий создаем такую структуру:</p>
<pre><code>html&gt;/**/body #id { property: value; }</code></pre>
<p>Почему именно в отдельном файле? Потому что такую конструкцию прочтут все современные браузеры, включая IE8. Нужно помнить, что в таком случае все остальные хаки, предназначеные для IE6/7, должны быть прописаны через их собственные специфичные хаки (тогда IE8 ничего не заподозрит):</p>
<ul>
<li><strong>IE 6 — * html</strong></li>
<li><strong>IE 7 — *+html</strong></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/css/ie8-css-hacks/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>IE со льдом, пожалуйста</title>
		<link>http://cascadi.ca/browsers/ie-on-the-rocks-please/</link>
		<comments>http://cascadi.ca/browsers/ie-on-the-rocks-please/#comments</comments>
		<pubDate>Fri, 24 Apr 2009 22:22:48 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[Браузеры]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=152</guid>
		<description><![CDATA[Не смотря на то, что в последний год наблюдается постоянная тенденция снижения количества посетителей на сайтах с браузером Internet Explorer 6 и даже принимая во внимание тот факт, что Майкрософт внесла Internet Explorer 8 в список важных обновлений в Windows&#160;&#8230; <a href="http://cascadi.ca/browsers/ie-on-the-rocks-please/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="float: left; margin: 0 15px 10px 0;" src="http://www.webmakerslounge.com/images/posts/scotch.jpg" alt="IE on the rocks" />Не смотря на то, что в последний год наблюдается постоянная тенденция снижения количества посетителей на сайтах с браузером Internet Explorer 6 и даже принимая во внимание тот факт, что Майкрософт внесла Internet Explorer 8 в список важных обновлений в Windows Update, ни одна компания, уважающая себя и посетителей своих сайтов, а тем более желающая зарабатывать деньги, не откажется от поддержки 6-ого Интернет Эксплорера.</p>
<p>Это детище мелкомягких, срок выдержки которого поболее чем у лучших коньяков, не желает становиться лучше с годами (видимо надо было хранить в дубовых бочках). И нам, веб-разработчикам, приходится с этим мириться. Количество версий Интернет Эксплорера, которые надо поддерживать &#8211; растет, и эпопея эта затянулась. Со времени выхода 7-ой и 8-ой версии Интернет Эксплорера появилось несколько утилит, позволяющих тестировать верстку в нескольких версиях IE одновременно.</p>
<p>Вот скромный список вариантов &#8220;борьбы&#8221; с Интернет Эксплорером:</p>
<ul>
<li>Multiple IE</li>
<li>IE Tester</li>
<li>IE Collection</li>
<li>Виртуальные машины</li>
<li>Выйти на пенсию<span id="more-152"></span></li>
</ul>
<p>А теперь немного подробнее:</p>
<p><strong>Multiple IE</strong>. Живет это зверь <a class="out" href="http://tredosoft.com/Multiple_IE">здесь</a>. Вернее жил. На данный момент проект закрыт и не поддерживается, но утилита доступна для скачивания и более-менее функцию свою выполняет. Тем не менее я решил отказаться от ее использования из-за того что она стала &#8220;привирать&#8221; а иногда откровенно глючить. Кроме того, появились более удачные &#8220;конкуренты&#8221;.</p>
<p><strong>IE Tester</strong>. Ребята из DebugBar пошли дальше и создали <a class="out" href="http://www.my-debugbar.com/wiki/IETester/HomePage">утилиту</a>, позволяющую иметь одновременно установленными 5.5, 6, 7 и 8 версии Интернет Эксплорера одновременно, с собственными javascript-движками. Причем выполнено это все в виде одного браузера, в каждой отдельной вкладке которого можно открыть нужную вам версию IE. Программа работает как в ХРюне, так и в Висте. Интерфейс правда немного подкачал, ибо выглядит как китайский MS Office 2007, но это не главное.</p>
<p>По большому счету, на этом можно было бы и остановиться, но. При ежедневном ее использовании на Windows XP, были обнаружены некоторые странности:</p>
<ul>
<li>Иногда не подхватываются стили из файла, вынесенного с помощью условных комментариев.</li>
<li>Иногда вкладка с IE6 просто тихо умирает и не реагирует.</li>
<li>Несколько раз замечены несоответствия отрисовки страницы в IE Tester и в IE6, установленном нативно.</li>
</ul>
<p>Причем дома, на Windows Vista, таких проблем замечено не было. Вам решать. Двигаемся дальше.</p>
<p><strong>IE Collection</strong>. Об <a class="out" href="http://finalbuilds.edskes.net/iecollection.htm">этой утилите</a> я узнал совершенно случайно недавно, в контексте беседы о разработке под IE. В ней на выбор предоставлены фактически ВСЕ версии IE:</p>
<ul>
<li>Internet Explorer 1.0 (4.40.308)</li>
<li>Internet Explorer 1.5 (0.1.0.10)</li>
<li>Internet Explorer 2.01 (2.01.046)</li>
<li>Internet Explorer 3.0 (3.0.1152)</li>
<li>Internet Explorer 4.01 (4.72.3110.0)</li>
<li>Internet Explorer 5.01 (5.00.3314.2100)</li>
<li>Internet Explorer 5.5 (5.51.4807.2300)</li>
<li>Internet Explorer 6.0 (6.00.2800.1106)</li>
<li>Internet Explorer 6.0 (6.00.2900.2180)</li>
<li>Internet Explorer 7.0 (7.00.5730.13)</li>
<li>Internet Explorer 8.0 (8.00.6001.18702)</li>
</ul>
<p>Даже если принять во внимание, что первые шесть позиций в списке нужны только эстетствующим bdsm-щикам, а седьмая Яндексоидам, то все остальные очень нам подойдут. И все это чудо, начиная с 4-ой версии должно работать стабильно во всех ОСях Майкрософт, начиная с XP. На сайте есть таблица совместимости. Вроде бы &#8220;кричали женщины Ура и в воздух чепчики бросали&#8221;, но. Опять но. При попытке установить все это добро на Висту, инсталятор отказался выдать мне 7 и 8 версии IE. Ну 8 у меня и так есть, обойдусь. А вот с 7-ой как быть? Буду проверять с чем конфликтует.</p>
<div style="text-align: center;"><img src="http://www.webmakerslounge.com/images/posts/sketch.png" alt="IE Sketch" /></div>
<p>Вот для таких &#8220;проблемных&#8221; как я, умные люди придумали <strong>виртуальные машины</strong>:</p>
<ul>
<li><a class="out" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=21EABB90-958F-4B64-B5F1-73D0A413C8EF&amp;displaylang=en">Internet Explorer Application Compatibility VPC Image</a> &#8211; мелкомягкое изделие, срок действия которого заканчивается 30 Апреля :) Не спрашивайте меня почему. Посмотрим какие цифры там будут стоять 1-ого Мая. Работает через Virtual PC, естественно на ХР и Висте.</li>
<li><a class="out" href="http://www.virtualbox.org/wiki/Downloads">Virtualbox</a> &#8211; кросс-платформенное решение, полноценная виртуальная машина, со всеми вытекающими. Из минусов &#8211; при отсутствии готовых образов придется создавать свои, с установкой и сексом.</li>
<li><a class="out" href="http://www.vmware.com/download/player/">VMware Player</a> &#8211; дублировать предыдущий абзац не буду. Читайте выше.</li>
</ul>
<p>Я с виртуальными машинами работать не люблю. Не люблю и все тут. При открытом Фотошопе, полной кошелке браузеров, редакторе, файловом менеджере и еще каком нибудь плеере в фоне еще открыть две виртуальные машины? Увольте. Видимо мне пора <strong>на пенсию</strong> :) А вы сами решайте.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/browsers/ie-on-the-rocks-please/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>С Наступающим!</title>
		<link>http://cascadi.ca/misc/happy-holidays/</link>
		<comments>http://cascadi.ca/misc/happy-holidays/#comments</comments>
		<pubDate>Sat, 27 Dec 2008 00:00:51 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=150</guid>
		<description><![CDATA[#wishing { you: happy-holidays!important; }
]]></description>
			<content:encoded><![CDATA[<p style="text-align: center; font-weight: bold; font:size: 24px!important;">#wishing { you: happy-holidays!important; }</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/misc/happy-holidays/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Разметка. Transitional vs Strict</title>
		<link>http://cascadi.ca/html/transitional-vs-strict-markup/</link>
		<comments>http://cascadi.ca/html/transitional-vs-strict-markup/#comments</comments>
		<pubDate>Tue, 02 Dec 2008 08:18:45 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=147</guid>
		<description><![CDATA[

Речь в статье пойдет о такой, казалось бы изжеваной и изъезженой теме, как валидация веб-документа по одной из DTD-схем, которые в свою очередь определяются с помощью DOCTYPE.
Тема эта нетривиальна; преимущества и недостатки того или иного способа валидации на первый взгляд&#160;&#8230; <a href="http://cascadi.ca/html/transitional-vs-strict-markup/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img alt="XHTML Strict" src="/images/posts/valid-xhtml-robot.png" title="XHTML Strict" class="alignright" width="300" height="285" />
</p>
<p>Речь в статье пойдет о такой, казалось бы изжеваной и изъезженой теме, как валидация веб-документа по одной из DTD-схем, которые в свою очередь определяются с помощью <a href="http://www.webmakerslounge.com/html/pravilnyiy-doctype/">DOCTYPE</a>.</p>
<p>Тема эта нетривиальна; преимущества и недостатки того или иного способа валидации на первый взгляд не всегда являются явными. Поэтому я решил что упомянуть о них еще раз будет не лишним.</p>
<p>В последнее время, многие редакторы и CMS&#8217;ки автоматически проставляют DOCTYPE для документа, что само по себе является прорывом, но к сожалению этого недостаточно, так как зачастую это именно Transitional схема. Начинающие разработчики не уделяют этому должного внимания, а зачастую вобще не подозревают что у них есть выбор.</p>
<p>Перед тем как перейти к самой сути вопроса давайте вспомним что такое Transitional схема. Она была создана как переходная, для облегчения перехода от HTML3.2 к HTML4, сохраняя унаследованые элементы и атрибуты.</p>
<p><span id="more-147"></span></p>
<p>Абстрагируясь от конкретного языка, не важно то ли это HTML или XHTML, основной недостаток Transitional заключается в том, что переходная схема валидации допускает присутствие в разметке элементов, отвечающих за презентативное, визуальное отображение.</p>
<p>Современная веб-разработка зиждется на трех китах &#8211; разметка (html/xhtml/xml), оформление (css) и функционал с эффектами (javascript). Причем акцент здесь приходится на четкое разделение между ними. Разметка является логическим разделением документа на семантические, смысловые составляющие. Стилевые правила, вынесеные в отдельный файл(ы), отвечают за оформление документа относительно устройств отображения.  Скрипты, отвечающие за взаимодействие между документом и пользователем, а так же за эффекты, также вынесены в отдельные файлы. Смешение всех этих компонентов в одном документе считается моветоном и заметно усложняет жизнь веб-разработчика и порядочно увеличивает время загрузки и отображения документа браузером.</p>
<p>К сожалению все мы далеки от идеала и все вышеописаные проблемы присутствовали всегда. Но время не стоит на месте, языки разметки развиваются. Разработчики движутся вместе с ними вперед, но и о наследии забывать не стоит. Поэтому и была придумана переходная схема, позволяющая отвалидировать документ, содержащий кашу из элементов, стилей, атрибутов и скриптов.</p>
<p>Все это делалось в надежде на то, что сознательные разработчики перейдут на новый стандарт, а затем подтянут и свои проекты. Но в данном случае, к сожалению, очень хорошо подходит выражение &#8220;<em>нет ничего более постоянного, чем временное</em>&#8220;.</p>
<p><strong>А что же собственно делать?</strong>Использовать Strict DTD — строгую, однозначную схему валидации документа, которая как раз создана для того чтобы отделить содержимое от стилей и скриптов. Как это сделать? Очень просто. В следующем вашем проекте просто поменяйте DOCTYPE на один из этих:</p>
<pre><code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"&gt;</code></pre>
<pre><code>&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;</code></pre>
<p>Кстати, W3C однозначно рекомендует использовать Strict.</p>
<blockquote><p>&#8220;This is the HTML 4.01 Transitional DTD, which includes presentation attributes and elements that W3C expects to phase out as support for style sheets matures. Authors should use the Strict DTD when possible, but may use the Transitional DTD when support for presentation attribute and elements is required.&#8221;</p>
</blockquote>
<p>Чего вы лишаетесь, переходя на строгую схему валидации:</p>
<p><strong>Список запрещеных элементов</strong>: <em>applet, basefont, center, dir, font, iframe, isindex, menu, noframes, s, strike, u</em></p>
<p><strong>Список запрещеных атрибутов</strong>: </p>
<ul>
<li>Атрибут <em>alink</em> запрещен для <em>body</em></li>
<li>Атрибут <em>background</em> запрещен для <em>body</em></li>
<li>Атрибут <em>bgcolor</em> запрещен для <em>body, table, td, th, tr</em></li>
<li>Атрибут <em>border</em> запрещен для <em>img, object</em>, но может быть использован в < em>table</li>
<li>Атрибут <em>clear</em> запрещен для <em>br</em></li>
<li>Атрибут <em>language</em> запрещен для <em>script</em></li>
<li>Атрибут <em>link</em> запрещен для <em>body</em></li>
<li>Атрибут <em>name</em> запрещен для <em>form, img</em>, но может быть использован в <em>a, button, input, map, meta, object, param, select, textarea</em></li>
<li>Атрибут <em>noshade</em> запрещен для <em>hr</em></li>
<li>Атрибут <em>nowrap</em> запрещен для <em>td, th</em></li>
<li>Атрибут <em>start</em> запрещен для <em>ol</em></li>
<li>Атрибут <em>target</em> запрещен для <em>a, area, base, form, link</em></li>
<li>Атрибут <em>text</em> запрещен для <em>body</em></li>
<li>Атрибут <em>type</em> запрещен для <em>li, ol, ul</em>, но может быть использован в <em>a, button, input, link, object, param, script, style</em></li>
<li>Атрибут <em>value</em> запрещен для <em>li</em>, но может быть использован в <em>button, input, option, param</em></li>
<li>Атрибут <em>vlink</em> запрещен для <em>body</em></li>
</ul>
<p><strong>Структурные изменения</strong>: элементы <em>a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var</em> и текст не могут быть дочерними для <em>blockquote, body, form, noscript</em>. Другими словами &#8211; элементы <em>blockquote, body, form, noscript</em> могут иметь только блочные элементы в дочерних элементах первого уровня.</p>
<p>Отказ от атрибута <em>target=&#8221;_blank&#8221;</em> для ссылок. Во-первых, указывать пользователю на то, как и где открывать ссылку — не красиво. Во-вторых, если необходимо, это можно сделать <a href="http://www.webmakerslounge.com/html/forget-about-target-attribute/">простым</a> способом и <a href="http://www.456bereastreet.com/archive/200610/opening_new_windows_with_javascript_version_12/" class="out">продвинутым</a>. </p>
<p>Что вы приобретаете?</p>
<ul>
<li>Хорошо структурированую разметку</li>
<li>Четкое отделение содержимого от оформления</li>
<li>Возможность более быстрой и легкой работы и поддержки кода</li>
<li>Дисциплину в написании кода</li>
<li>Респект и уважуху ;)</li>
</ul>
<p><strong>Когда стоит использвать Transitional?</strong> Тут есть два основных момента. Переходная схема хороша, когда вы работаете с большим количеством чужого кода, поменять который не представляется возможным. Хороший пример — большинство CMS. В большинстве случаев невозможно изменить их код, не залезая в ядро, что автоматически исключает возможность обновлений.</p>
<p>Второй момент — использование iframe. Если вы используете в своих проектах iframe, то он не оставляет вам выбора. Используте Transitional.</p>
<p>Дабы облегчить себе переход от переходной схемы к строгой во время разметки документа думайте о том, для чего нужен тот или иной элемент, а не о том как он будет выглядеть.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/html/transitional-vs-strict-markup/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Соломоновы столбцы</title>
		<link>http://cascadi.ca/css/colgroup/</link>
		<comments>http://cascadi.ca/css/colgroup/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 08:32:44 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=140</guid>
		<description><![CDATA[Давно мы о таблицах не говорили. Да и что о них говорить? Их оформлять надо. Табличное представление информации является одним из важных инструментов донесения данных до пользователя и несомненно должно быть удобным и легким для восприятия.
Существуют различные методы визуального разграничения&#160;&#8230; <a href="http://cascadi.ca/css/colgroup/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Давно мы о таблицах не говорили. Да и что о них говорить? Их оформлять надо. Табличное представление информации является одним из важных инструментов донесения данных до пользователя и несомненно должно быть удобным и легким для восприятия.</p>
<p>Существуют различные методы визуального разграничения информации в таблицах для большего удобства восприятия. Такие как <em>разделение строк таблицы</em> различным цветом. Этот способ известен под названием &#8220;<a href="http://www.webmakerslounge.com/css/striped-tables/">Полосатые таблицы</a>&#8220;</p>
<p>Сегодня я хотел бы поговорить о столбцах (колонках) таблицы. Признавайтесь, сколько раз вы чертыхались, прописывая класс для каждой ячейки в каждой строке, чтобы выделить ту или иную колонку фоновым цветом? :)</p>
<p>Сейчас это конечно уже  в прошлом, существуют решения с использованием JS, CSS3 и всевозможных js-фрэймворков. Мы их рассматривать сейчас не будем, благо поисковики никто не отменял.</p>
<p>Существует простое, кроссбраузерное решение, основаное только на HTML/CSS. А именно <strong>colgroup</strong>. Решение это совсем не ново, но почему-то незаслужено забыто многими разработчиками. Перейдем прямиком к разметке:</p>
<pre><code>&lt;table&gt;
		&lt;caption&gt;Столбцы / колонки:&lt;/caption&gt;
		&lt;colgroup&gt;
			&lt;col /&gt;
			&lt;col class="alt" /&gt;
			&lt;col /&gt;
			&lt;col class="alt" /&gt;
			&lt;col /&gt;
		&lt;/colgroup&gt;
		&lt;tr&gt;
			&lt;th&gt;FF2/3&lt;/th&gt;
			&lt;th&gt;IE6/7&lt;/th&gt;
			&lt;th&gt;Opera&lt;/th&gt;
			&lt;th&gt;Safari&lt;/th&gt;
			&lt;th&gt;Other&lt;/th&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
			&lt;td&gt;Нет&lt;/td&gt;
			&lt;td&gt;Да&lt;/td&gt;
		&lt;/tr&gt;
	&lt;/table&gt;</code></pre>
<p>Чем этот код отличается от обычной разметки таблицы? Наличием тегов <em>colgroup</em> и <em>col</em>. Собственно <em>colgroup</em> является родительским контейнером для элементов <em>col</em>, которые и определяют нужные нам столбцы. Достаточно указать тому или иному столбцу класс и вуаля — у нас есть колонки, <a href="/files/colgroup.html">выделенные по вашему вкусу</a>.</p>
<p>Вот так выглядит CSS:</p>
<pre><code>table {
border: 1px solid #333;
border-collapse: collapse;
}
th, td {
padding: 2em;
text-align: center;
border-spacing: 1em;
}
th {
background: #ddd;
color: #fff;
}
/*Стиль для столбца*/
col.alt {
background: #ddf;
}</code></pre>
<p>В принципе ничего сложного, и уж тем более инновационного, здесь нет. Таким способом можно задавать стиль для любого столбца таблицы.</p>
<p>Проверено в FF2/3, IE6/7, Opera 9.5, Safari|(Win)</p>
<p>Список поддерживаемых стилевых правил. <a href="http://www.w3.org/TR/CSS21/tables.html#columns" class="out">Спецификация</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/css/colgroup/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Мысли о разрешении экрана. Год спустя</title>
		<link>http://cascadi.ca/misc/screen-resolutions-2/</link>
		<comments>http://cascadi.ca/misc/screen-resolutions-2/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 07:15:55 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/?p=137</guid>
		<description><![CDATA[В последнее время при разработке сайтов все меньше и меньше учитывается разрешение 800х600, что само по себе не удивительно, если взглянуть на статистику. Соответственно, либо сайты оптимизированы под 1024х768 и выше, либо они &#8220;резиновые&#8221;, что встречается реже.
Ситуация закономерная и соответствует&#160;&#8230; <a href="http://cascadi.ca/misc/screen-resolutions-2/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://img379.imageshack.us/img379/2948/computerjw4.png" alt="" style="float: right; margin: 0 0 10px 10px;"/>В последнее время при разработке сайтов все меньше и меньше учитывается разрешение 800х600, что само по себе не удивительно, если взглянуть на <a class="out" href="http://www.w3counter.com/globalstats.php">статистику</a>. Соответственно, либо сайты оптимизированы под 1024х768 и выше, либо они &#8220;резиновые&#8221;, что встречается реже.</p>
<p>Ситуация закономерная и соответствует развитию рынка мониторов и стремлениям дизайнеров/разработчиков. Я уже размышлял над этим <a href="http://www.webmakerslounge.com/news/screen-resolutions/">год назад</a>. Так вот, год спустя мои мысли приобрели немного другое направление.</p>
<p>Количество посетителей сайтов с разрешением 800х600 не только не уменьшится, а увеличится. Связано это напрямую с развитием субноутбуков, кпк, мобильников и прочих переносимых девайсов. Добрая половина субноутбуков уже сейчас имеет разрешение 1024х600, но сайт, оптимизированый под 1024х768, открытый на таком экране, в большинстве случаев будет неудобоваримым так как займет всё окно браузера. А в дизайне, как известно,  важны пустоты.</p>
<p>Поэтому я предлагаю перестать игнорировать 800х600 и начать смотреть на этот вопрос под другим углом. Мне кажется разумным: </p>
<ul>
<li>Создавать отдельный файл стилей, оптимизированый под маленькие разрешения экрана, для всех мобильных устройств .</li>
<li>С помощью PHP/JS создать функциональную возможность переключения файла стилей для владельцев настольных компьютеров с малым разрешением экрана.</li>
</ul>
<p>Таким образом, мы убиваем одним выстрелом двух зайцев. У сайта появляется полноценная мобильная версия, и мы заботимся о посетителях с маленьким&#8230; разрешением.</p>
<p>Добавление файла стилей для мобильных устройств делается так:</p>
<pre><code>&lt;link rel="stylesheet" type="text/css" media="handheld" href="mobile.css" /&gt;</code></pre>
<p>Про корректное оформление мобильной версии сайта можно почитать на старом добром ресурсе <a class="out" href="http://www.alistapart.com/articles/pocket/">A List Apart</a>.</p>
<p>Переключать стили можно с помощью JQuery <a class="out" href="http://www.kelvinluck.com/article/switch-stylesheets-with-jquery">вот так</a> или <a class="out" href="http://frinity.blogspot.com/2008/06/switch-css-stylesheets-using-jquery.html">так</a>.</p>
<p>Решения, конечно, могут быть другими, но главная мысль состоит в том, чтобы заботиться о всех посетителях сайта, вне зависимости от разрешения монитора.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/misc/screen-resolutions-2/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>@Media 2008 Лондон. Отчет. Часть вторая</title>
		<link>http://cascadi.ca/misc/atmedia2008-report-2/</link>
		<comments>http://cascadi.ca/misc/atmedia2008-report-2/#comments</comments>
		<pubDate>Sun, 20 Jul 2008 22:13:18 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://local.webmakerslounge.com/?p=129</guid>
		<description><![CDATA[
Часть первая.
Второй день конференции начался с жестокого похмелья доклада Nate Koechley под названием &#8220;Professional Front-End Engeneering&#8221;. Как Нэйт и обещал, он толкнул зажигательную речь о Front-End&#8217;е и его значении в веб-разработке. Особый упор был сделан на том, что Front-End веб-разработка&#160;&#8230; <a href="http://cascadi.ca/misc/atmedia2008-report-2/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="float: right; margin-left: 10px" title="@Media 2008 лого" src="/images/atmedia/logo_small.png" alt="@Media 2008 лого" /></p>
<p><a href="http://www.webmakerslounge.com/news/atmedia2008-report-1/">Часть первая</a>.</p>
<p>Второй день конференции начался с <span style="text-decoration: line-through;">жестокого похмелья</span> доклада <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#nate">Nate Koechley</a> под названием &#8220;Professional Front-End Engeneering&#8221;. Как Нэйт и обещал, он толкнул зажигательную речь о Front-End&#8217;е и его значении в веб-разработке. Особый упор был сделан на том, что Front-End веб-разработка по сути своей ни чем не отличается от архитектуры и поэтому отношение к ней, со стороны разработчика и его начальства не должно быть другим. Архитектор, проектируя здание, не позволяет себе махнуть рукой на то, что будет с домом через 5—10 лет, проект наполняется чертежами, схемами, документацией и тд. Так почему разработка сайтов должна отличаться?</p>
<p>Он призвал веб-разработчиков не пренебрегать своей работой даже если они убеждены, что проект, который они делают, не важен и не будет развиваться. Веб, как известно, среда динамическая и постоянно расширяющаяся, по сему любой, даже самый маломальский проект может &#8220;выстрелить&#8221; и его надо будет срочно расширять, дорабатывать и развивать. Соответственно не стоит экономить на документации, комментировании собственного кода, стоит помнить возможности повторного использования элементов интерфейса и возможности для расширения. <span id="more-129"></span></p>
<p>И в конце концов Нейт напомнил присутствующим о том, что представление о них самих складывается по их работе. В общем и в целом, доклад получился правильным, разве что некоторым его было тяжеловато воспринимать с утра&#8230;</p>
<p>Понравилась фраза Нэйта — <em>We are responsible for the &#8220;View source&#8221;!</em></p>
<p>Вслед за Нэйтом на сцену поднялся <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#jonathan">Jonathan Snook</a>, известный канадский веб-разработчик — фрилансер. Его доклад, &#8220;Building on the Shoulders of Giants&#8221;, основывался на том, что многие веб-разработчики любят каждый раз изобретать велосипед. Само по себе это не так уж и плохо, особенно в начале профессионального пути, так как помогает понять основы и приобрести свои наработки. Но подобный подход в конкурентной среде является серьезным минусом, так как обладая какой-либо идеей и затрачивая огромное время на ее разработку с нуля, вы рискуете прийти на рынок далеко не первым; всем известно что одинаковые идеи приходят различным людям в голову одновременно и побеждает тот, кто реализует задуманное быстрее остальных.</p>
<div style="text-align: center"><img title="Jonathan Snook" src="/images/atmedia/snook.jpg" alt="Jonathan Snook" /></div>
<p>Джонатан призвал использовать опыт гигантов отрасли для своих нужд и реализовывать идеи быстро, с минимальными затратами ресурсов и времени. Основная мысль в том, чтобы используя открытые наработки, API, библиотеки и базы знаний реализовать первичную версию своего проекта, &#8220;застолбить территорию&#8221; и после этого спокойно продолжать разработку, заодно получая бесплатный bug-track от бета-тестеров и фокус-групп. В докладе Джонатан привел пример реализации простого приложения, основанного на API Twitter и Jquery, в котором твиты располагались на странице в виде временной шкалы. По его словам, это приложение он написал за несколько часов, вечером перед конференцией. Дополнителый пример, уже пользующийся успехом в Северной Америке, приведенный на конференции, <a class="out" href="http://mymilemarker.com/">MyMileMarker</a>. Кстати любители римейков могут попробовать реализовать подобный сервис в Рунете ;)</p>
<p>Любопытный момент, о котором говорил Джонатан, заключается в том, что при использовании открытых API, разработчик выступает в роли посредника между сервисом и пользователями и в случае сбоев в работе сервиса/API, например Twitter&#8217;a, пользователи разработанного вами приложения будут винить именно вас, а не Twitter. Поэтому такие моменты нужно обдумывать заранее и стараться предотвращать.</p>
<p>Следующий доклад доклад был посвещен Javascript-библиотекам и вел его никто иной как <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#john">John Resig</a>, создатель и главный разработчик <a class="out" href="http://jquery.com">Jquery</a>. Само название доклада &#8220;The Why and Which of JavaScript Libraries&#8221; уже создавало проблему так как Джон, как лицо лично заинтересованое, не мог дать объективное объяснение того, какая библиотека лучше и ее стоит использовать. Он конечно же сам это понимал и поэтому посторил доклад на сравнении библиотек по различным характеристикам.</p>
<p>Начал издалека, с общих сведений, прошелся по статистике использования (большинство разработчиков используют Jquery(32%) и Prototype(32%), остальное делят между собой YUI(20%), Dojo и иже с ними), пробежался по характеристикам. Доклад получился обзорным, почти без конкретики, но по моему мнению только из-за тотальной нехватки времени. В сухом остатке, Jquery и Prototype — лидеры, без сюрпризов.</p>
<div style="text-align: center"><img title="John Resig" src="/images/atmedia/resig.jpg" alt="John Resig" /></div>
<p>В конце доклада снова не осталось времени на вопросы и я добавил свой вопрос &#8220;Как вы относитесь к идее добавления популярных Javascript-библиотек в браузеры в виде компонентов/плагинов?&#8221; в секцию Вопросов и Ответов, которая была запланирована на конец дня. Забегая вперед, должен сказать что к сожалению до этого вопроса добраться так и не успели.</p>
<p>После обеденного перерыва с докладом &#8220;WAI(Web Accessibility Initiative) &#8211; ARIA(Accessible Rich Internet Applications) &#8211; It’s Easy&#8221; выступил <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#steve">Steve Faulkner</a> из Paciello Group, который является директором The Web Accessibility Tools Consortium (WAT-C). Речь шла о доступности веб-приложений и сервисов для людей с ограниченными визуальными возможностями. В роли подопытного кролика снова выступал многострадальный Twitter. На примере использования дополнительных атрибутов в разметке, Стив хотел показать относительную легкость создания документов, которые будут более корректно обрабатываться Screen Reader&#8217;ами и управление ими будет более доступным. Но все оказалось не таким простым.</p>
<p>Примеры, которые приводил Стив, работали только на синтетических тестах, код которых Стив не показал. Кроме того, документы в которых добавляются атрибуты от WAI-ARIA становятся невалидными, так как WAI-ARIA еще не стала рекомендацией W3C. Не обошлось и без курьеза. Во время одной из демонстраций, Screen Reader JAWS, подключеный к общим колонкам, решил выступить с самостоятельной речью со скоростью 120 слов в минуту. Разволновавшийся Стив довольно долго не мог его успокоить и зал довольно долго хихикал иногда переходя на сдавленое ржание :)</p>
<p>Не смотря на вышесказанное, тема является очень серьезной и заслуживает самого пристального внимания. К сожалению у разработчиков до сих пор нет достаточно инструментов (да что там, почти совсем нет) для того чтобы облегчить жизнь людям с физическими ограничениями, что удручает.</p>
<p>Заключительный доклад конференции, на который я пошел, был &#8220;Exploring the Server Side: Rails &amp; Django&#8221;, который вели по очереди <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#james">James Adam</a> и <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#simon">Simon Willison</a>. Цель доклада заключалась в представлении серверных технологий Front-End разработчикам для общего развития и для того чтобы заинтересовать потенциальных пользователей. Доклады получились легкими, полными примеров и &#8220;живого&#8221; написания кода во время доклада. В моем случае доклады достигли цели, так как я, незнающий ни Ruby ни Django, заинтересовался и буду пробовать :)</p>
<p>Здесь мне довольно сложно говорить о конкретике, но по моему скромному разумению, Ruby позиционировался как фрэйворк, в котором легко строить приложения и работать с БД, а Django как фрэймворк, в котором хорошо строить контент-ориентированые сайты (если что, ногами не бить).</p>
<p>Собственно на этом доклады закончились и началась секция Вопросов и Ответов. На секции долго решали как же все таки правильнее называть Front-End Web Developer или Front-End Engeneer. В конце концов решили что не в названии дело, а в важности этой профессии в процессе веб-разработки. До моего вопроса про Javascript-библиотеки так и не дошли.</p>
<p><strong>Общие впечатления</strong>:</p>
<p>Первый день конференции немного подкачал, но это субъективное мнение. Второй день исправил положение но чувствовалась нехватка конкретики и все время присутствовало ощущение типа &#8220;ну, вот-вот, сейчас будет, сейчас зажгут&#8221;, но как-то оно не очень оправдалось.</p>
<p>Очень порадовала возможность общения с другими веб-разработчиками, обмен мнениями и опытом, ощущение если не братства, то гильдии :)</p>
<p>В целом <a class="out" href="http://www.vivabit.com/atmedia/">@Media</a> — выдающееся событие, конференция привлекает огромное количество веб-разработчиков со всего мира, которые создают в нем отличную атмосферу для общения и обмена знаниями. Мне кажется что сейчас организаторы стоят на пороге решения как должна выглядеть конференция в будущем. Уверен что они сделают правильные выводы и я постараюсь поехать туда и в следующий раз.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/misc/atmedia2008-report-2/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>@Media 2008 Лондон. Отчет. Часть первая</title>
		<link>http://cascadi.ca/misc/atmedia2008-report-1/</link>
		<comments>http://cascadi.ca/misc/atmedia2008-report-1/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 22:29:37 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[Разное]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/news/atmedia2008-report-1/</guid>
		<description><![CDATA[
29-30 Мая в Лондоне прошла четвертая конференция для веб-разработчиков @Media. Мне посчастливилось на ней побывать и я, как и обещал, публикую отчет о поездке. Для начала немного общих сведений о конференции:
@Media проводится уже в четвертый раз и обычно это происходит&#160;&#8230; <a href="http://cascadi.ca/misc/atmedia2008-report-1/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div style="text-align: center"><img title="@media 2008 лого" src="/images/atmedia/logo.gif" alt="@media 2008 лого" /></div>
<p>29-30 Мая в Лондоне прошла четвертая конференция для веб-разработчиков <a class="out" href="http://www.vivabit.com/atmedia2008/london">@Media</a>. Мне посчастливилось на ней побывать и я, как и обещал, публикую отчет о поездке. Для начала немного общих сведений о конференции:</p>
<p>@Media проводится уже в четвертый раз и обычно это происходит в Сан Франциско, Лондоне и Гонг Конге с промежутком в неделю, в течении месяца. В этом году конференция проводилась только в Лондоне, не смотря на то, что изначально была заявлена и в Сан Франциско. Причина отмены американской части конференции мне не известна.</p>
<p>Ежегодно в конференции принимают участие многие мастистые и известные разработчики и дизайнеры из разных стран. Фактически каждый год конференцию почитают своим присутствием представители Google, Yahoo, W3C, Clear Left, 37 Signals и других известных компаний и веб-студий.</p>
<p>Доклады на конференции идут в виде своеобразного марафона &#8211; один за другим, с небольшими перерывами на обед и кофе, в течении двух дней, с 9.00 до 17.00. Лекции идут параллельно в двух разных аудиториях, что с одной стороны создает свободу выбора, а с другой &#8211; ставит иногда перед участниками диллему выбора.</p>
<p>В общем конференция эта во многом знаковая и задающая тон сообществу веб-разработчиков. По крайней мере так было, и я надеюсь что будет. А теперь перейдем собственно к отчету и тому что было в этом году. <span id="more-125"></span><br />
<strong>День первый.</strong></p>
<div style="text-align: center"><img title="Вход на конференцию" src="/images/atmedia/2.jpg" alt="Вход на конференцию" /></div>
<p>Конференцию открыл <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#jeffrey">Джеффри Вин</a> из Google (до мая 2008). Джефф хороший докладчик и сразу создал благоприятную атмосферу, и свою открывающую речь продолжил докладом &#8220;Designing Our Way Through Data&#8221;. Основная мысль доклада состояла в том, чтобы предоставляя информацию посетителям сайта, не заставлять их думать. Все должно быть наглядным и не вызывать сомнений.</p>
<p>Все было бы чудесно, если бы в последствии я не узнал что в своем докладе Джефф использовал солидные куски из доклада на @Media 2006. Это конечно не сделало сам доклад хуже, но оставило небольшой осадок.</p>
<div style="text-align: center"><img title="Jeff Veen открывает конференцию" src="/images/atmedia/7.jpg" alt="Jeff Veen открывает конференцию" /></div>
<p>Следующий доклад вела <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#indi">Инди Янг</a> из компании Adaptive Path. Сессия называлась &#8220;Mental Models: Sparking Creativity Through Empathy&#8221; и речь в ней велась в основном об организации рабочего процесса, создании атмосферы для производства креативных решений и подобным вещам. Говорились правильные вещи, но мне доклад не очень понравился, возможно из-за манеры речи.</p>
<p>Вслед за Инди, я был на сессии с интригующим названием &#8220;Getting Your Hands Dirty with HTML5&#8243;, которую вели <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#jamesg">Джеймс Грэхем</a> и <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#lachlan">Лаклэн Хант</a>. Ребята старались доказать преимущества HTML5 перед XHTML2, объясняя на пальцах общие моменты и мотивируя все обратной совместимостью.</p>
<p>Фактически разговор шел о развитии существующих технологий и добавлении новых элементов, не отрицая старые. Мысль логичная, но вызывающая вопросы, и по моему мнению тормозящая прогресс. Но истина, как всегда где-то по середине. Поскорее бы ее узнать.</p>
<p>&#8220;Живые&#8221; примеры в докладе не использовались, до этого развитие проекта еще не дошло. Очень спорным преимуществом оказался пример развития, выраженый в добавлении элемента <em>video</em>, который призван обрабатывать видеоматериалы на равне с элементом <em>img</em>, обрабатывающим изображения. Это заявление разработчиков меня озадачило, так как я сразу же подумал о том, как элемент <em>video</em> будет справляться с огромным количеством кодеков и форматов видео. Когда я спросил об этом одного из докладчиков, после лекции, то вразумительного ответа так и не получил.</p>
<p>После этого доклада был большой перерыв на обед. Кормили кстати на конференции неплохо и помимо обеда во время всех докладов действовали буфеты, в которых можно было заправиться кофе, чаем, соком и кондитерскими изделиями. Естественно все было бесплатным (еще бы, стоимость участия в конференции, составляющая более 500 фунтов за два дня покрывает такие &#8220;мелочи&#8221;).</p>
<div style="text-align: center"><img title="Холл конференции, где все общались и кушали" src="/images/atmedia/4.jpg" alt="Холл конференции, где все общались и кушали" /></div>
<p>Послеобеденную часть конференции открыл доклад <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#drew">Дрю Маклиллана</a> о CMS&#8217;ках. У меня были определенные надежды на эту сессию, но к сожалению они разбились о суровую реальность. Доклад получился сухим, неинтересным и в конце концов свелся к ненавязчивой рекламе собственной разработки его студии. Стоит ли говорить о том, что ближе к концу доклада я стал клевать носом, как и многие другие?</p>
<p>Параллельно с этим печальным докладом шла сессия с <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#andyc">Энди Кларком</a>, который с высоты своего статуса известного дизайнера-фрилансера, вещал о том, как хорошо брать вдохновление из любимых комиксов и у супергероев. В общем после обеда можно было смело пойти вздремнуть часок, что довольно сильно меня расстроило.</p>
<p>К счастью, на выручку страждущим явился <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#dan">Дэн Рубин</a>, который работает с сайтами известных СМИ и ведет начало своей деятельности из типографии. Дэн наглядно показал, что в течении 20 минут, с помощью гридов и работы с текстом в CSS можно превратить неудобоваримый сайт <a class="out" href="http://www.foxnews.com/">Fox News</a> во что-то более пристойное и подобное хотя бы сайту <a class="out" href="http://www.cnn.com">CNN</a>.</p>
<p>Затем он пошел дальше и показал макет собственной версии Fox News, который по моему мнению уже можно было смело нести в агенство и предлагать им на продажу. В общем и в целом, Дэн показал себя профессионалом и интересным докладчиком, что немного сгладило мои немного печальные ощущения от первого дня конференции.</p>
<div style="text-align: center"><img title="Лого конференции @Media в конференц-зале" src="/images/atmedia/1.jpg" alt="Лого конференции @Media в конференц-зале" /></div>
<p>На этом собственно и закончился первый день конференции и наступила пора секции вопросов и ответов. Выглядела она как встреча старых знакомых, которых зачем-то посадили на сцену и попросили иногда реагировать на зал. Вторую половину этого чудодейства я успешно проговорил по телефону и вернулся как раз к моменту начала вечеринки.</p>
<div style="text-align: center"><img title="Секция вопросов и ответов" src="/images/atmedia/8.jpg" alt="Секция вопросов и ответов" /></div>
<p>С горя дернув чуть ли не залпом литр пива я вышел покурить и&#8230; сразу же наткнулся на <a class="out" href="http://www.vivabit.com/atmedia2008/london/speakers/#nate">Nate Koechley</a>, ведущего Фронт-енд Инженера Yahoo и Peter-Paul Koch&#8217;a, в народе известного как PPK и ведущего сайт <a href="http://www.quirksmode.org">http://www.quirksmode.org</a>. Завязалась беседа, в ходе которой я понял что они тоже недовольны первым днем конференции и попытался выснить причины происходящего, а заодно спросил у Питера почему он не выступает с докладом в этот раз.</p>
<p>PPK затруднился прямо ответить на это, но из косвенных намеков и обрывков фраз я понял что конференция получила определенную политическую подоплеку, ради сохранения аудитории и притока инвестиций, так как участниками являются не только разработчики, которые всячески за поддержку стандартов и придерживаются довольно жестких мнений по некоторым щекотливым вопросом, но и менеджеры проектов и компаний, а так же потенциальные инвесторы, которым может не понравиться некоторая жесткость взглядов и высказываний.</p>
<p>Нейт, в свою очередь, вселил в меня надежду, сказав что первый день отдан на растерзание дизайнерам, контентщикам и иже с ними, а уж завтра то он &#8220;воткнет флаг Фронт-Енда в эту сцену&#8221;.</p>
<div style="text-align: center"><img title="Слева направо: Nate Koechley, я, Peter-Paul Koch" src="/images/atmedia/9.jpg" alt="Слева направо: Nate Koechley, я, Peter-Paul Koch" /></div>
<p>И вот с этими мыслями я пополз в гостиницу в ожидании второго дня конференции.</p>
<p>Продолжение следует.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/misc/atmedia2008-report-1/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Будущее CSS</title>
		<link>http://cascadi.ca/css/future-of-css/</link>
		<comments>http://cascadi.ca/css/future-of-css/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 12:46:45 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/css/future-of-css/</guid>
		<description><![CDATA[В связи с участившимися сообщениями о том, что в CSS хотят добавить переменные, анимацию, трансформацию и прочая, хотелось бы немного отстраненно порассуждать на эту тему.
CSS, которому уже 12 лет, изначально был задуман и разрабатывался как средство для описания внешнего вида&#160;&#8230; <a href="http://cascadi.ca/css/future-of-css/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>В связи с участившимися сообщениями о том, что в CSS хотят добавить переменные, анимацию, трансформацию и прочая, хотелось бы немного отстраненно порассуждать на эту тему.</p>
<p><a title="CSS" class="out" href="http://ru.wikipedia.org/wiki/Каскадная_таблица_стилей">CSS</a>, которому уже 12 лет, изначально был задуман и разрабатывался как средство для описания внешнего вида документа. С тех пор утекло много воды и технология претерпела значительные изменения и дополнения. На данный момент, рабочая версия по стандарту W3C, принятая в 2006 году &#8211; <a class="out" href="http://www.w3.org/TR/CSS21">Уровень 2.1</a>. Уровень 3 находится в состоянии разработки (есть черновик), и ожидается с нетерпением многими разработчиками.</p>
<p>Вокруг будущего CSS ходит много слухов и предположений, коротые муссируются и множатся, выливаются в дискуссии и споры. Ведь по сути, если хотя бы половина предлагаемых изменений будет осуществлена, то CSS превратится в (полноценный?) язык программирования визуальной составляющей веб-документов.<br />
И все бы хорошо, если бы это не вносило смуту в ряды разработчиков, часть которых небезосновательно утверждает что использование переменных на уровне документа это благо, так как позволяет с большей легкостью изменять значения тех или иных свойств, да и сами свойства. Другая часть разработчиков не согласна с этими утверждениями и твердит о том, что переменные &#8211; зло, так как толка от них мало, они только путают и тд.<span id="more-122"></span></p>
<p>И те и другие утверждения имеют право на существование в определенных ситуациях, так как ситация неоднозначна. Но переменные &#8211; это еще ничего. Как на счет анимации элементов? До сих пор анимация является прерогативой Javascript&#8217;a, который может быть потеснен с этой должности, по крайней мере частично.</p>
<p>Такие моменты, как вращение элементов вокруг своей оси, смещение по плоскости и сжатие с растягиванием, могут быть подхвачены берсерками CSS и внедрены по-самое-не-балуйся. Причем любой, более-менее разбирающийся в CSS, но не разбирающийся в Javascript, скажет что был бы этому рад. В данной ситуации, Javascript, как основное средство создания динамики в веб-документах, отходит на второй план, если не дальше.</p>
<p>В складывающейся ситуации, в стройных рядах веб-разработчиков может случиться смута, в которой начнут стираться грани между разделением логики, динамики, контента и оформления.</p>
<p>Может быть я сгущаю краски и все не так сложно. Давайте рассмотрим такую ситуацию. Предположим, в теории, что Эра CSS наступила и все самые смелые планы по расширению и выделению CSS в новый язык сбылись. Как я вижу это?</p>
<p>Использование переменных на уровне файла стилей вырастет в желание использовать глобальные переменные. В каждом проекте, состоящем больше чем из 3/5/10 страниц будет глобальный мастер-файл стилей с переменными, файл стилей, отвечающий за анимацию, файл, отвечающий за типографику и тд. Будет путаница с переменными, так как не ясно каков будет приоритет их применения. Построчно, как чтение CSS-файла сейчас, или нет? Можно ли будет выносить переменные?</p>
<p>Javascript станет транспортом информации от клиента к серверу и абстрагируется от оформления окончательно. Так как возможностей CSS не будет хватать для полного управления элементом (я просто не верю, что этот момент наступит), то часть разработчиков будет продолжать использовать JS для создания динамики страниц. Порядка это не добавит.</p>
<p>Разметка документов упростится до минорной, в любом случае, немалая ее часть будет генерироваться JS и видоизменяться в CSS. div&#8217;ы (divisions) станут основными базовыми элементами разметки. С помощью CSS они будут принимать любую форму, от круга до многоугольника. Возможностей станет гораздо больше и у дизайнеров не будут скованы руки.</p>
<p>Веб от всего этого только выиграет. Откроется большой простор для деятельности и креатива. Читая <strike>по кофейной гуще</strike> о возможных путях развития CSS, у меня уже чешутся руки создать что-нибудь эдакое!</p>
<p>А теперь ушат ледяной воды. Кто-нибудь спросил разработчиков браузеров, в частности MSIE, о их планах на будущее? Или все прогрессивные разработчики будут <em>писать</em> сайты исключительно для альтернативных браузеров (а не для людей)? А остальные по-старинке, будут оформлять контент с помощью CSS2.1(2.9?), где динамика, анимация и прочее останутся вотчиной ECMA Script&#8217;a?</p>
<p>Любые фундаментальные изменения должны быть четко структурированы и осмыслены; роли ведущих игроков должны быть распределены и расписаны, иначе не избежать неразберихи. А еще хорошо бы, чтобы такие глобальные вещи как языки разметки, программирования и оформления перестали быть Рекомендациями и превратились бы в Стандарты, за спиной которых стоит Организация, <em>требующая</em> их выполнения и соблюдения.</p>
<p>Развитие CSS &#8211; несомненное благо. И оно всенепременно затронет другие компоненты Веба. Вопрос только в том, что из фантазий войдет в реальность, а что так и останется нереализоваными мечтами? Время покажет.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/css/future-of-css/feed/</wfw:commentRss>
		<slash:comments>19</slash:comments>
		</item>
		<item>
		<title>Годы летят&#8230; в XSLT</title>
		<link>http://cascadi.ca/xslt/loop-template/</link>
		<comments>http://cascadi.ca/xslt/loop-template/#comments</comments>
		<pubDate>Sat, 08 Mar 2008 22:18:46 +0000</pubDate>
		<dc:creator>Curly Brace</dc:creator>
				<category><![CDATA[XSLT]]></category>

		<guid isPermaLink="false">http://www.webmakerslounge.com/xslt/loop-template/</guid>
		<description><![CDATA[На днях столкнулся с задачей вывода списка годов между 1900 и 2008 в теге select. Дело было при создании формы регистрации, а заказчик почему-то не хотел использовать Date Picker.

Так как сайт разрабатывается с помощью XML/XSL и без БД, то и&#160;&#8230; <a href="http://cascadi.ca/xslt/loop-template/">Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>На днях столкнулся с задачей вывода списка годов между 1900 и 2008 в теге <strong>select</strong>. Дело было при создании формы регистрации, а заказчик почему-то не хотел использовать <a class="out" href="http://kelvinluck.com/assets/jquery/datePicker/v2/demo/">Date Picker</a>.</p>
<div style="text-align: center"><img title="select xslt" alt="select xslt" src="/images/posts/select.gif" /></div>
<p>Так как сайт разрабатывается с помощью XML/XSL и без БД, то и решение должно быть на XSL. Если с месяцами все понятно и их в любом случае надо тянуть из XML, то дни и года надо выписать через темплейт. <span id="more-119"></span><br />
После продолжительных поисков я нашел оптимальное для себя решение. Вот как это выглядит:</p>
<pre><code>&lt;xsl:template name="loop"&gt;
&lt;xsl:param name="i"/&gt;
&lt;xsl:param name="count"/&gt;
&lt;xsl:if test="$count &gt;= $i"&gt;
&lt;option&gt;
&lt;xsl:value-of select="$i"/&gt;
&lt;/option&gt;
&lt;xsl:call-template name="loop"&gt;
&lt;xsl:with-param name="i" select="$i + 1"/&gt;
&lt;xsl:with-param name="count" select="$count"/&gt;
&lt;/xsl:call-template&gt;
&lt;/xsl:if&gt;
&lt;/xsl:template&gt;
</code></pre>
<p>Простой цикл. Задаются параметры начала и конца, и производится вывод чего захотите. В моем случае это элементы <strong>option</strong>, с таким же успехом это могут быть строки в таблице, элементы списка и тд. Этот темплейт сохраняется в файле темплейтов, а сам вызов &#8211; на конкретной странице, что дает большую гибкость и избавляет от описывания того же самого в каждом конкретном случае. Вот так выглядит вызов темплейта:</p>
<pre><code>&lt;select tabindex="10" id="year" name="year"&gt;
&lt;xsl:call-template name="loop"&gt;
&lt;xsl:with-param name="i"&gt;1900&lt;/xsl:with-param&gt;
&lt;xsl:with-param name="count"&gt;2008&lt;/xsl:with-param&gt;
&lt;/xsl:call-template&gt;
&lt;/select&gt;</code></pre>
<p>Параметры задаются в зависимости от надобности. В данном случае это года.</p>
<p>Буду рад альтернативным решениям.</p>
]]></content:encoded>
			<wfw:commentRss>http://cascadi.ca/xslt/loop-template/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
