<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/css" href="http://wiki2.linuxformat.ru/skins/common/feed.css?97"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title>LXF85:WOA - История изменений</title>
		<link>http://wiki2.linuxformat.ru/index.php?title=LXF85:WOA&amp;action=history</link>
		<description>История изменений этой страницы в вики</description>
		<language>ru</language>
		<generator>MediaWiki 1.11.1</generator>
		<lastBuildDate>Wed, 13 May 2026 19:30:53 GMT</lastBuildDate>
		<item>
			<title>Crazy Rebel: викификация, оформление</title>
			<link>http://wiki2.linuxformat.ru/index.php?title=LXF85:WOA&amp;diff=6598&amp;oldid=prev</link>
			<description>&lt;p&gt;викификация, оформление&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая статья&lt;/b&gt;&lt;/p&gt;&lt;div&gt;=Что за штука... CSS 3?=&lt;br /&gt;
&lt;br /&gt;
: Семантическая сеть норовит ободрать стили у Интернета, и '''Пол Хадсон''' спешит к ордам разработчиков, готовых к ответному удару.&lt;br /&gt;
&lt;br /&gt;
* '''Ну знаю я, что такое CSS: это насчет стилей, типа макияжа web-страниц, верно?'''&lt;br /&gt;
&lt;br /&gt;
Можно, конечно, и так сказать. Каскадные таблицы стилей (Cascading Style-Sheets), или же способ назначить стили элементам HTML. По крайней мере, все начиналось именно с этого...&lt;br /&gt;
&lt;br /&gt;
* '''Думаете, в CSS 3 будет иначе?'''&lt;br /&gt;
&lt;br /&gt;
Вообще-то, перемены уже идут. CSS позволяют разработчикам сократить объем кода HTML, дав&lt;br /&gt;
возможность указать элементам страницы их цвет,&lt;br /&gt;
используемый шрифт и т.п., не смешивая эту информацию со смысловой частью кода. Когда-то давно,&lt;br /&gt;
семантические тэги, типа '''&amp;lt;nowiki&amp;gt;&amp;lt;h1&amp;gt;&amp;lt;/nowiki&amp;gt;''' и '''&amp;lt;nowiki&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/nowiki&amp;gt;''', шли вперемешку с тэгами стиля, типа '''&amp;lt;nowiki&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/nowiki&amp;gt;''' и '''&amp;lt;nowiki&amp;gt;&amp;lt;b&amp;gt;&amp;lt;/nowiki&amp;gt;'''. Семантические тэги описывают структуру документа – определяют части, которые должны быть заголовками, телом документа, вставками и прочее. Тэги стиля описывают стиль документа – например, размер шрифтов и цвета Если тэг '''&amp;lt;nowiki&amp;gt;&amp;lt;font&amp;gt;&amp;lt;/nowiki&amp;gt;''' использовать для отделения различных частей страницы, то компьютерам не понять, где главный заголовок, где подзаголовок, а где тело документа. Структурные тэги вроде '''&amp;lt;nowiki&amp;gt;&amp;lt;h1&amp;gt;&amp;lt;/nowiki&amp;gt;''' для определения&lt;br /&gt;
заголовков первого уровня и '''&amp;lt;nowiki&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/nowiki&amp;gt;''' для параграфов помогают компьютерам разобраться в содержании web-страниц.&lt;br /&gt;
&lt;br /&gt;
* '''Надо полагать, именно отсюда пошел термин «семантическая сеть».'''&lt;br /&gt;
&lt;br /&gt;
Это верно: придать web-страницам смысл, а не стиль.&lt;br /&gt;
&lt;br /&gt;
* '''Как сюда вписывается CSS?'''&lt;br /&gt;
&lt;br /&gt;
Мы согласились, что CSS – это каскадные таблицы стилей; а точнее – это код, назначающий стили&lt;br /&gt;
элементам страницы. В семантической сети у самих страниц нет стиля – они содержат только структуру&lt;br /&gt;
документа. А потом применяется CSS, чтобы описать цвет, шрифт и так далее. Приятно то, что CSS обычно&lt;br /&gt;
хранится в отдельном от HTML файле, и для переделки&lt;br /&gt;
дизайна всего сайта – например, если ваша компания&lt;br /&gt;
затеяла смену униформы – надо будет просто отредактировать один файл.&lt;br /&gt;
&lt;br /&gt;
* '''Значит, CSS даст дизайнерам возможность наводить лоск, а разработчикам маяться с HTML-кодом?'''&lt;br /&gt;
&lt;br /&gt;
Вы уверены, что так не было и раньше? Конечно, полный контроль дизайнеров над web-страницами вносит&lt;br /&gt;
определенную долю проблем. Например, многие ранние (да и современные) сайты на основе CSS использовали фиксированные размеры шрифта, ради совершенства дизайна. При мониторе с большим разрешением, плохом зрении или желании, чтобы текст легко читался издалека, приходилось молча страдать – дизайнеры считали, что шрифт хорошо смотрится в выбранном размере, значит, нечего и менять его.&lt;br /&gt;
&lt;br /&gt;
* '''Вот и верь, что CSS делает мир лучше...'''&lt;br /&gt;
&lt;br /&gt;
Ну, история еще не закончена. Первые разработчики CSS исправлялись и учились использовать мощь CSS для улучшения сайтов, а не дешевого трюкачества. В CSS 2 добавили массу новых возможностей – в частности, селекторы, позволяющие указать, каким элементам нужно задать стиль: например, вы хотите, чтобы все&lt;br /&gt;
ссылки внутри таблиц были одного цвета, а все остальные ссылки – другого. Там, где CSS 1 определяли высоту и ширину элементов, CSS 2 определяют минимальные и максимальные ширину и высоту элементов.&lt;br /&gt;
&lt;br /&gt;
* '''Итак, мы получаем больший контроль?'''&lt;br /&gt;
&lt;br /&gt;
Именно.&lt;br /&gt;
&lt;br /&gt;
* '''А CSS 3 даст еще больший контроль?'''&lt;br /&gt;
&lt;br /&gt;
Вы получаете кое-какие новые возможности, но это не главное в новой спецификации. Дело в том,&lt;br /&gt;
что CSS 3 исправляет худшие дефекты предыдущих версий, которые дизайнерам приходилось обходить,&lt;br /&gt;
используя всякие там танцы с бубном.&lt;br /&gt;
&lt;br /&gt;
* '''Становится уже интересно!'''&lt;br /&gt;
&lt;br /&gt;
Рассмотрим пример с окантовкой объектов. Как получить скругленные края? Раньше приходилось&lt;br /&gt;
создавать изображения для углов и накладывать их на элемент, чтобы он хорошо выглядел ['''в браузерах Mozilla был специальный атрибут CSS, но он не являлся стандартным, – прим. ред.''']. Оно, конечно, работало, но отнимало уж больно много времени. С помощью CSS 3 вы можете указать радиус скругления, и все будет сделано за вас.&lt;br /&gt;
&lt;br /&gt;
* '''Те целых два парня, что действительно мечтали о закругленной окантовке, будут в экстазе. Как насчет чего-нибудь посерьезнее?'''&lt;br /&gt;
&lt;br /&gt;
Хорошо, а прозрачность? Раньше это приходилось делать с помощью либо альфа-канала PNG, интенсивно нагружающего CPU (причем без поддержки IE), либо чисто Microsoft’овских расширений, использовавших преимущества DirectX. А в CSS 3 для этого появилось два стандартных способа, одобренных W3C.&lt;br /&gt;
&lt;br /&gt;
* '''То вообще не было стандартов много лет, а то вдруг сразу два?'''&lt;br /&gt;
&lt;br /&gt;
Верно! Первый способ задать прозрачность состоит в задании цвета элемента как RGBA. Это означает&lt;br /&gt;
Красный, Зеленый, Синий и Альфа, и вы можете определить каждое из первых трех значений в диапазоне&lt;br /&gt;
от 0 (нет цвета в этом канале) до 255, а альфа определить в диапазоне от 0 до 1 (1 означает совершенно&lt;br /&gt;
непрозрачный). Если у вашей страницы черный фон и вы помещаете на нее элемент '''&amp;lt;nowiki&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/nowiki&amp;gt;''' со значением цвета 255, 255, 255, 0.5, то он отобразится серым, потому что смешается в отношении 50% с черным цветом фона. Другой способ состоит в задании атрибута непрозрачности объекта между 0 и 1.&lt;br /&gt;
&lt;br /&gt;
* '''Какие же это стандарты, если их два?'''&lt;br /&gt;
&lt;br /&gt;
Ну, очевидно, атрибут «непрозрачность» (opacity) надо использовать, когда требуется, чтобы объект просвечивал, но не имел никакого специального цвета. Изображения, например, должны использовать opacity, а не значение RGBA. Они также имеют более тонкое отличие: установка цвета фона элемента '''&amp;lt;nowiki&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/nowiki&amp;gt;''' с помощью RGBA сделает его прозрачным, но не повлияет на объекты, которые он содержит, например, текст. Но если вы используете атрибут '''opacity''', то '''&amp;lt;nowiki&amp;gt;&amp;lt;div&amp;gt;&amp;lt;/nowiki&amp;gt;''' будет прозрачным, как и все объекты внутри него.&lt;br /&gt;
&lt;br /&gt;
* '''Здорово! Почти рыдаю от счастья. Есть еще какие-нибудь чудеса?'''&lt;br /&gt;
&lt;br /&gt;
Например, вот это: несколько фоновых картинок для любого элемента.&lt;br /&gt;
&lt;br /&gt;
* '''Зачем это нужно?'''&lt;br /&gt;
&lt;br /&gt;
Ну, положим, вы делаете страничку о мореплавании. Вы хотите, чтобы на вашей страничке фоном были облака, а также, чтобы внизу экрана был океан, слева вверху располагался компас, а справа внизу пиратский флаг. С помощью CSS 2, вам пришлось бы определить несколько элементов и попытаться расположить их, отслеживая прокрутку экрана и изменение размеров. А с CSS 3 – уже догадались? – сделать это гораздо проще. Вы можете теперь определить много&lt;br /&gt;
различных картинок, а также их положение на экране (абсолютное или относительное), и браузер автоматически расположит их для вас.&lt;br /&gt;
&lt;br /&gt;
* '''Благодаря CSS 3, ленивые разработчики станут еще ленивее?'''&lt;br /&gt;
&lt;br /&gt;
Нет – все эти примеры говорят о тех вещах, которые делают все в любом случае, но определение их как&lt;br /&gt;
стандартных позволит а) работать им в любом браузере и б) для их кодирования потребуется намного&lt;br /&gt;
меньше кода. Возьмите, например, столбцы – мы все читаем текст по колонкам в газетах и журналах (включая этот), а на web-странице мы читаем очень длинные строки текста, ограниченные только размером нашего&lt;br /&gt;
экрана. До CSS 3 не было возможности создать непрерывный переход текста от одного столбца к другому – вам приходилось создавать все столбцы вручную,&lt;br /&gt;
затем прикидывать, сколько текста умещается в каждом из них. Начиная с CSS 3, вы можете определить,&lt;br /&gt;
на сколько столбцов вы хотите разбить элемент, а так-же размер интервалов между столбцами.&lt;br /&gt;
&lt;br /&gt;
* '''Но сеть-то выглядит намного лучше без столбцов?'''&lt;br /&gt;
&lt;br /&gt;
Эта статья отвечает на вопрос «что», а не «почему»: я не собираюсь судить о новых свойствах CSS 3! По мне,&lt;br /&gt;
так больший выбор – это хорошо.&lt;br /&gt;
&lt;br /&gt;
* '''Хватит о примочках для дизайнеров. Вы сказали, что разработчики будут иметь больший контроль с CSS 3 – вот об этом я хочу услышать!'''&lt;br /&gt;
&lt;br /&gt;
Ладно, поговорим о селекторах. В CSS 3 вы можете выбирать элементы, к которым присоединены определенные атрибуты – строго соответствующие атрибуты (используя ~), соответствия подстрок (с помощью '''*'''), строки, начинающиеся с определенного шаблона (с помощью '''^''') или заканчивающиеся определенным шаблоном (с помощью '''$'''). Так, если вы хотите отобразить зеленым все ссылки на сайты Великобритании, то напишите следующее:&lt;br /&gt;
&lt;br /&gt;
 a[href$=”.co.uk”]{color:green}&lt;br /&gt;
&lt;br /&gt;
Новые селекторы полезны также при отладке. Например, подразумевается, что все изображения на&lt;br /&gt;
ваших страницах содержат альтернативный текст для целей общедоступности, но на большом сайте отследить все изображения довольно трудно. С помощью CSS 3 эта проблема решается следующим образом:&lt;br /&gt;
&lt;br /&gt;
 img:not([alt]){border:3px solid red;}&lt;br /&gt;
&lt;br /&gt;
* '''Все, я подсел на CSS 3 – прямо сейчас за это и возьмусь!'''&lt;br /&gt;
&lt;br /&gt;
Не гоните коней: CSS 3 – отличная спецификация, но ее надо еще реализовать во всех браузерах.&lt;br /&gt;
&lt;br /&gt;
* '''То есть вы мне тут всякого наговорили, а пользоваться этим нельзя?'''&lt;br /&gt;
&lt;br /&gt;
Кое-что уже можно использовать прямо сейчас, но всеобщей поддержки пока нет. Некоторые браузеры&lt;br /&gt;
поддерживают довольно большой набор, но по крайней мере один (Internet Explorer) из них не поддерживает CSS 3 совсем.&lt;br /&gt;
&lt;br /&gt;
* '''Какие браузеры уже используют CSS 3?'''&lt;br /&gt;
&lt;br /&gt;
''Konqueror'' – на данный момент – возглавляет список, имея полную поддержку всех новых селекторов, а также некоторые другие новые возможности. ''Mozilla Firefox'' наступает ему на пятки, как и ''Opera 9''.&lt;br /&gt;
Приятно, что довольно большая часть новых функций реализуется в ''Internet Explorer 7'', поэтому к моменту&lt;br /&gt;
выхода Vista все основные браузеры уже будут поддерживать CSS 3.&lt;br /&gt;
&lt;br /&gt;
* '''Журнальная площадь исчерпана, задаю обязательный финальный вопрос: на каких URL можно узнать побольше?'''&lt;br /&gt;
&lt;br /&gt;
Каких URL? А, хороший вопрос – я ж еще про них не сказал! Официальные спецификации – по адресу http://www.w3.org/Style/CSS/current-work, полезный сайт с предварительной информацией – http://www.css3.info, а о том, какие  браузеры в каком объеме поддерживают селекторы CSS, можно узнать на странице http://dev.l-c-n.com/CSS3-selectors/browser-support.php. '''LXF'''&lt;/div&gt;</description>
			<pubDate>Mon, 19 Jan 2009 08:10:48 GMT</pubDate>			<dc:creator>Crazy Rebel</dc:creator>			<comments>http://wiki2.linuxformat.ru/index.php/%D0%9E%D0%B1%D1%81%D1%83%D0%B6%D0%B4%D0%B5%D0%BD%D0%B8%D0%B5:LXF85:WOA</comments>		</item>
	</channel>
</rss>