<?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>ZODIOS.net &#187; CSS</title>
	<atom:link href="http://zodios.net/tag/css/feed" rel="self" type="application/rss+xml" />
	<link>http://zodios.net</link>
	<description>HTML-Верстка сайта в деталях</description>
	<lastBuildDate>Wed, 18 Nov 2009 08:12:32 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Некоторые полезности от Мейера</title>
		<link>http://zodios.net/htmlcss/meyers-trics.html</link>
		<comments>http://zodios.net/htmlcss/meyers-trics.html#comments</comments>
		<pubDate>Sun, 14 Dec 2008 12:41:56 +0000</pubDate>
		<dc:creator>Zodios</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=455</guid>
		<description><![CDATA[Не так давно прочитал одну очень полезную и интересную книгу по верстке, которая называется «CSS —  Каскадные таблицы стилей. Подробное руководство» Э. Мейер. Книгу стоит отнести в раздел «must read» для любого человека, который занимается версткой. Единственное о чем пожалел после ее прочтения, что мне раньше не посоветовали  прочитать эту «библию верстальщика».

В этой [...]]]></description>
			<content:encoded><![CDATA[<p>Не так давно прочитал одну очень полезную и интересную книгу по верстке, которая называется «CSS —  Каскадные таблицы стилей. Подробное руководство» Э. Мейер. Книгу стоит отнести в раздел «must read» для любого человека, который занимается версткой. Единственное о чем пожалел после ее прочтения, что мне раньше не посоветовали  прочитать эту «библию верстальщика».</p>
<p><span id="more-455"></span></p>
<p>В этой замечательной книге детально рассматриваются практически все фундаментальные аспекты верстки, осведомленность о которых, избавит от необходимости искать подсказки на блогах и форумах и сэкономит кучу времени и нервов.</p>
<p>Для себя я решил записать некоторые полезные тонкости, которые нашел в этой книге и которые помогут привести верстку к более высокому уровню. Список представлен в произвольном порядке.</p>
<h4>Подключения стилей</h4>
<p>Ни  для кого не секрет информация о существовании тега link которые позволяет подключать внешние таблицы стилей. Но вот об атрибуте media многие забывают. Этот атрибут позволяет указать браузеру для чего используется таблица стилей и может получать значения screen,  print, aural, handheld, projection, tv. Таким образом, можно задать отдельные стили для оформления информации для экарана монитора или для вывода на печать. К сожалению сейчас можно говорить об адекватной поддержке только двух параметров   screen и print.</p>
<h4 style="font-variant:small-caps;">Капитель в текстах</h4>
<p>В типографике кроме прописных и строчных букв есть еще один тип начертания символов – Капитель. Капитель внешне похож на уменьшенный вариант прописных букв, но на самом деле, это совсем другое начертание букв. В ряде книг капитель рекомендуют применять  для набора имён, некоторых названий и аббревиатур и шрифтовых выделений в тексте.  Заголовок этого параграфа набран капителием.  Для задания капители в верстке есть отдельное свойство каскадных таблиц &#8211; font-variant:small-caps;</p>
<h4>Некоторые псевдоклассы</h4>
<p>Кроме всем известного псевдо класса :hover(IE6 без дополнительных мер поддерживает этот псевдо класс только для ссылок), который задает стиль для объекта над которым находится курсор, и :link,: active, :visited, есть еще ряд других полезных псевдо классов. К ним относится псевдокласс  :focus (выделяет активный элемент, например поле в которым находиться курсор, IE7 и ниже не поддерживают ), :first-child (стилевое оформления для первого дочернего элемента), :first-letter (стилевое оформления для первой буквы элемента), first-line(стилевое оформления для первой строки элемента), :after(псевдокласс, который используется для вывода желаемого контента после элемента IE7 и ниже не поддерживают), :before(псевдокласс, который используется для вывода желаемого контента до элемента IE7 и ниже не поддерживают).</p>
<h4>Оформления пробелов и запрет переноса</h4>
<p>В html 3 для того чтоб запретить переносить строку если она не помещается в контейнер использовался тег nobr,  в html 3.2 и выше этот тег считается устаревшим, но его функцию заменяет параметр CSS white-space, который может принимать такие значения:  nowrap (переносы строк в коде HTML игнорируются, весь текст отображается одной строкой, вместе с тем, добавление тега br переносит текст на новую строку), pre (текст показывается с учетом всех пробелов и переносов, как они были добавлены разработчиком в коде HTML. Если строка получается слишком длинной и не помещается в окне браузера, то будет добавлена горизонтальная полоса прокрутки),  pre-wrap  (сохраняются все пробелы и переносы. Однако если текст по ширине не помещается в заданную область, то текст автоматически будет перенесен на следующую строку, не работает в IE6, для поддержки нужно дописать параметр word-wrap: break-word; который можно вынести в отдельный файл стилей для IE чтоб сохранить валидность).</p>
<h4>Выравнивание текстов возле элементов формы</h4>
<p>Если в одной строке помещать поле ввода, или другой элемент формы вместе с текстом, который указывает назначение этого поля, элементы формы будут выровнены относительно базовой линии строки, причем в разных браузерах будут визуальные отличия в расположении. Для того чтоб изменить расположения элементов формы, скажем выровнять по вертикали, нужно воспользоваться параметром vertical-align задав ему одно из допустимых значений: top, middle, bottom, baseline, также допускается значение заданное в процентах.</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/meyers-trics.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Специфичность селекторов CSS, или кто в коде главный</title>
		<link>http://zodios.net/htmlcss/css-priority.html</link>
		<comments>http://zodios.net/htmlcss/css-priority.html#comments</comments>
		<pubDate>Sat, 29 Nov 2008 14:05:22 +0000</pubDate>
		<dc:creator>Zodios</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=443</guid>
		<description><![CDATA[Существует множество способов присвоить какой-либо стиль оформления нужному элементу. Но что происходит, если к одном элементу обращаются два взаимоисключающих селектора? Задача перекрытия селекторов стилей решается с помощью двух принципов CSS: специфичность и каскад. С каскадом все очень просто, если одному элементу присваиваются два селектора стиля, которые имеют одинаковую специфичность, верх берет тот стиль, который указан [...]]]></description>
			<content:encoded><![CDATA[<p>Существует множество способов присвоить какой-либо стиль оформления нужному элементу. Но что происходит, если к одном элементу обращаются два взаимоисключающих селектора? Задача перекрытия селекторов стилей решается с помощью двух принципов CSS: специфичность и каскад. С каскадом все очень просто, если одному элементу присваиваются два селектора стиля, которые имеют одинаковую специфичность, верх берет тот стиль, который указан позже.</p>
<p><span id="more-443"></span></p>
<p>А вопрос приоритетности стилей решает принцип специфичности. Специфичность это что-то вроде таблицы «рангов» селекторов стилей. Стиль, который имеет приоритет выше, присваивается атрибуту, если в каскаде нет селектора, который имеет такую же специфичность и объявлен позже. Специфичность стиля записывается в виде четырех порядков (0,0,0,0). Чем больше число, тем выше специфичность, порядок который стоит левее является более значительным по сравнению с правым, таким образом, специфичность (0,1,0,0) является высшее специфичности (0,0,0,99). Значение специфичности селектора вычисляется таким образом:</p>
<ul>
<li>Для каждого указанного в селекторе значения идентификатора(<code>#someID</code>) к специфичности добавляется 0,1,0,0.</li>
<li>Для каждого указанного в селекторе имени класса(<code>.someClass</code>), псевдокласса(<code>:hover</code>) или атрибута(<code>[href=”http://zodios.net”]</code>) к специфичности добавляется 0,0,1,0</li>
<li>Для каждого заданного в селекторе элемента(<code>h1,strong,div</code>) к специфичности добавляется 0,0,0,1</li>
</ul>
<h5>Пример расчета специфичности:</h5>
<pre><code>
h1 {color:red}  /*специфичность — 0,0,0,1*/

p em {color:#000}  /*специфичность — 0,0,0,2 */

.color {color:#fff} /*специфичность — 0,0,1,0*/

p.bright em.dark {color:#ff0000}  /*специфичность — 0,0,2,2*/

#color {color:#333}  /*специфичность — 0,1,0,0*/

em#color {color:#666}  /*специфичность — 0,1,0,1*/
</code>
</pre>
<p>Кроме специфичности для параметров стилей есть еще дополнительный атрибут <strong>!important</strong>. Этот атрибут делает указанный параметр(не селектор) высшее чем аналогичный параметр в селекторе который имеет более высокую специфичность. Атрибут <strong>!important</strong> записывается через пробел до закрывающего знака «;».</p>
<pre><code>
h1#someID /*специфичность — 0,1,0,1*/{
color:green;
text-decoration: line-through;
}

h1  /* специфичность — 0,0,0,1*/{
color:red !important;
text-decoration:underline;
}
</code>
</pre>
<p>В результате тексту который будет находиться в элементе &lt;h1 id=”someID”&gt; будет присвоен красный цвет несмотря на то, что специфичность первого селектора выше, но начертание текста будет зачеркнутым, так как <strong>!important</strong> относится только к параметру color. Но если <strong>!important</strong> присвоено двум одинаковым параметрам, верх берет тот, специфичность селектора которого выше.</p>
<p>Источник — «CSS — каскадные таблицы стилей. Подробное руководство.» Э.Мейер</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/css-priority.html/feed</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>Метод &#171;Раздвижных дверей&#187; Sliding Doors</title>
		<link>http://zodios.net/htmlcss/slidingdoors.html</link>
		<comments>http://zodios.net/htmlcss/slidingdoors.html#comments</comments>
		<pubDate>Thu, 09 Oct 2008 11:23:31 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=267</guid>
		<description><![CDATA[В сети можно накопать много информации  об этом методе, но большинство заметок о нем написано очень громоздко так, что многие не дочитывают до конца. Он не является революционным, но довольно популярный, многие его используют, не зная его истинного названия. Цель этой заметки &#8211;  дать минимальное представление об этом распространенном методе.

Метод «Раздвижных дверей»( Sliding [...]]]></description>
			<content:encoded><![CDATA[<p>В сети можно накопать много информации  об этом методе, но большинство заметок о нем написано очень громоздко так, что многие не дочитывают до конца. Он не является революционным, но довольно популярный, многие его используют, не зная его истинного названия. Цель этой заметки &#8211;  дать минимальное представление об этом распространенном методе.</p>
<p><span id="more-267"></span></p>
<p><em>Метод «Раздвижных дверей»( Sliding Doors)  придумал Douglas Bowman и был опубликован на A List Apart  20 октября 2003 года.</em></p>
<p><img class="imgFloatLeft" src="http://www.picamatic.com/show/2008/10/09/02/58/1155592_131x39.png" alt="" /><img class="imgFloatRight" src="http://www.picamatic.com/show/2008/10/09/02/58/1155590_55x39.png" alt="" />Главное назначение метода – создание резиновых блоков, которые имеют стилизированные  края. Например, нужно сделать кнопочку такого вида (см. рис), можно вырезать плашку под кнопочкой и в нее добавлять текст, но нужно, чтоб кнопочка была универсальной, чтоб в нее можно было вставлять текст любой и задняя плашка от этого растягивалась. Это и помогает сделать метод раздвижных дверей (Sliding Doors).</p>
<p><img class="imgFloatLeft" src="http://www.picamatic.com/show/2008/10/09/02/58/1155591_131x70.png" alt="" />Суть метода состоит в том, что создается блок, которому присваивается правый фоновый рисунок, который будет всегда справа, а внутрь него помещается другой блок, у которого фоновый рисунок будет всегда слева. Таким образом, при увеличении содержимого блока его боковые рисунки разъезжаются по краям. Тонкость состоит при возникновении ситуации, с неоднородным фоном. Тогда можно правый рисунок сделать максимально-допустимой ширины, или сделать еще один блок, в котором  фоновый рисунок центральной части будет повторятся.</p>
<pre><code>&lt;ul&gt;
   &lt;li class="”menu”"&gt;&lt;a&gt;Статьи&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</code></pre>
<pre><code>.menu {
	display:block;
	float:left;
	height:39px;
	margin-right:10px;
	background:url(rightdoor.png) no-repeat top right;
	}
	.menu a {
	display:block;
	height:39px;
	color:#fff;
	text-decoration:none;
	font:11px Tahoma;
	text-transform:uppercase;
	line-height:33px;
	padding:0 10px;
	background:url(leftdoor.png) no-repeat top left;
	}
</code></pre>
<p>Если блок должен растягиваться по горизонтали и вертикали нужно действовать аналогичным образом. Отличие состоит в том, что необходимо использовать четыре блока. В каждый из блоков помещается бекграундом  рисунок, отвечающий за каждый край из краев блока.</p>
<p>Есть еще одна вариация этого метода. Она состоит в абсолютном позиционировании. То есть родительскому элементу, который содержит контент, присваивается относительное позиционирование (position:relative) и в нем абсолютно, по углам, позиционируются боковые элементы.</p>
<p><a href="http://zodios.net/examples/slidingdoors/slidingdoors.html" target="_blank">Пример раздвижных дверей</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/slidingdoors.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Как подставить текст под бекраунд</title>
		<link>http://zodios.net/htmlcss/imagereplacement.html</link>
		<comments>http://zodios.net/htmlcss/imagereplacement.html#comments</comments>
		<pubDate>Wed, 08 Oct 2008 15:05:50 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=263</guid>
		<description><![CDATA[Не редко возникает необходимость заменить какую-то картинку текстом, то есть поместить под картинку текст. Например, сделать так, чтоб под картинкой логотипа находился текст и при отключении графики на странице было видно этот текст. Или, например, продублировать текст на картинке текстом под ней, чтоб поисковые боты могли проиндексировать его (вопрос белизны этого метода – отдельный разговор). [...]]]></description>
			<content:encoded><![CDATA[<p>Не редко возникает необходимость заменить какую-то картинку текстом, то есть поместить под картинку текст. Например, сделать так, чтоб под картинкой логотипа находился текст и при отключении графики на странице было видно этот текст. Или, например, продублировать текст на картинке текстом под ней, чтоб поисковые боты могли проиндексировать его (вопрос белизны этого метода – отдельный разговор). В этой заметке, представлены основные методы, которые я смог «откопать» в сети. Выбирались методы, которые не предусматривают подключение сторонних джава скриптом или флеш объектов.</p>
<p><span id="more-263"></span></p>
<h4>Метод FIR (Fahrner Image Replacement)</h4>
<p>Этот метод, придуманный Тоддом Фарнером, является довольно простым и оригинальным. Этот метод является наиболее популярным. Концепция метода состоит в том, что текст внутри блока берется в оболочку, которой присваивается display:none;</p>
<pre><code>
&lt;h1&gt;
	&lt;span&gt;Метод замены текста изображением  FIR&lt;/span&gt;
&lt;/h1&gt;
</code>
</pre>
<pre><code>
h1 {
width:150px;
height:150px;
background:url(images.gif) no-repeat;
}

h1 span {
display:none;
}
</code>
</pre>
<p>Недостаток метода в том, что при отключенной графике этот способ замены текста картинкой не отображает текст, который должен быть под картинкой. Таким образом, он подходит больше для поисковой оптимизации, когда необходимо продублировать текст на картинке.</p>
<h4>Метод Phark</h4>
<p>Майк Рандл разработал метод замены текста картинкой, в котором нет необходимости добавлять несемантические элементы.  Метод  Phark работает таким образом, что текст в блоке выкидывается за грани окна браузера путем присваивания тексту большого отрицательного отступа text-indent.</p>
<pre><code>
&lt;h1&gt;
	Метод замены текста изображением  Phark
&lt;/h1&gt;
</code>
</pre>
<pre><code>
h1 {
width:150px;
height:150px;
text-indent:-5000px;
background:url(images.gif) no-repeat;
}
</code>
</pre>
<p>Так же как и предыдущий способ размещения текста под картинкой, этот не позволяет отображать текст под картинкой при отключении графики. Еще один недостаток метода в том, что браузер FireFox во время клика по ссылке выделяет ее и ссылка у которой стотит этот IR имеет рамку ширина которой выходит за грани браузера. Но эту проблему можно решить через свойство outline, подробней в заметке <a href="http://zodios.net/htmlcss/outline-wbr-accent.html" target="_blank">Три полезные мелочи для верстки</a>.</p>
<h4>Метод замены текста картинкой MIR</h4>
<p>Метод похожий на Phark, только имеет чуть другу структуру.</p>
<pre><code>
&lt;h1&gt;
	Метод замены текста изображением  MIR
&lt;/h1&gt;
</code>
</pre>
<pre><code>
h1 {
letter-spacing :-1000em;
width:200px;
height:80px;
background:url(images.gif) no-repeat;
}
</code>
</pre>
<h4>Метод Leahy/Langridge.</h4>
<p>Метод состоит в «Выпихивании» текста верхним внутренним отступом за грани блока.</p>
<pre><code>
&lt;h1&gt;
	Метод замены текста изображением  Leahy/Langridge
&lt;/h1&gt;
</code>
</pre>
<pre><code>
h1{
padding: 80px 0 0 0;
overflow: hidden;
Background:url(images.gif) no-repeat;
height: 0px !important;
}
</code>
</pre>
<h4>Метод Гилдера-Левина (Pixy)</h4>
<p>Этот  трюк замены текста картинкой, созданный Томом Гилдером и Александром Левиым, возможно, самый удобный метод. Он позволяет отобрать текст под картинкой с  отключенной графики. Единственный его недостаток в том, что добавляется несемантические элементы. Суть метода состоит в том что в блоке фиксированных размеров, в котором находится текст помещается конструкция которая имеет абсолютное позиционирование и фон,  таким образом перекрывает текст.</p>
<pre><code>
&lt;h1&gt;
	Метод замены текста изображением  Pixy&lt;span&gt;&lt;/span&gt;
&lt;/h1&gt;
</code>
</pre>
<pre><code>
h1 {
position:relative;
width:150px;
height:150px;
text-indent:-5000px;
}
h2 span {
position:absolute;
width:100%;
height:100%;
background:url(images.gif) no-repeat;
}
</code>
</pre>
<p>При использовании этого метода, перекрывающие изображение должно иметь сплошной фон иначе текст будет просвечиваться через картинку.</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/imagereplacement.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>cellpading и cellspacing через CSS</title>
		<link>http://zodios.net/htmlcss/cellpading-cellspacing-css.html</link>
		<comments>http://zodios.net/htmlcss/cellpading-cellspacing-css.html#comments</comments>
		<pubDate>Sun, 28 Sep 2008 10:12:02 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=249</guid>
		<description><![CDATA[Есть несколько атрибутов таблицы, которые начинающим верстальщикам, кажутся незаменимыми при использовании CSS.  К таким атрибутам относится cellspacing, cellpadding.Умные верстальщики cellpadding, cellspacing не используют. Для того, чтоб понять какими атрибутами CSS их можно заменить нужно, разобраться в том, что они делают.

cel-spacing задает отступ между самими ячейками таблицы, то есть расстояние от края одной ячейки до [...]]]></description>
			<content:encoded><![CDATA[<p>Есть несколько атрибутов таблицы, которые начинающим верстальщикам, кажутся незаменимыми при использовании CSS.  К таким атрибутам относится <strong>cellspacing</strong>, <strong>cellpadding</strong>.Умные верстальщики cellpadding, cellspacing не используют. Для того, чтоб понять какими атрибутами CSS их можно заменить нужно, разобраться в том, что они делают.</p>
<p><span id="more-249"></span></p>
<p><strong>cel-spacing</strong> задает отступ между самими ячейками таблицы, то есть расстояние от края одной ячейки до края другой ячейки. <strong>cellspacing</strong> задает отступ внутри ячейки, то есть от края ячейки до ее содержимого. Зная это легко подобрать эквиваленты в CSS. Таким образом, вместо того, чтоб задавать:</p>
<pre><code>
&lt;table border="0" cellspacing="0" cellpadding="0"&gt;
  &lt;tr&gt;
      &lt;td&gt;Содержимое ячейки&lt;/td&gt;
  &lt;/tr&gt;
&lt;/table&gt;
</code>
</pre>
<p>Нужно прописать стиль таблице:</p>
<pre><code>
#tableId {
   border:0;
   padding:0;
   border-collapse:collapse;
}
#tableId td {
   padding:0;
}
</code>
</pre>
<p>В коде выше видно параметр <strong>border-collapse</strong>. Одно из свойств таблицы состоит в том, что параметр border, в виде атрибута тега, задает рамку не только внешней части таблицы, но и всем ячейкам. Таким образом, две ячейки подряд находятся на интервале равном двойной ширине рамки (рамка одной ячейки и потом рамка другой ячейки), чтоб этого избежать применяется этот параметр. Он указывает на то, что рамки боковых ячеек сливаются в одну рамку, таким образом, избавляются от двойного отступа. Это нехитрое свойство часто является причиной возникновение непонятных отступов в таблице при обнулении всех параметров таблицы.</p>
<p>Нюансом также является то, что параметр Cellspacing задает отступы между ячейками, то есть если задать ячейке border и использовать этот параметр, то между ними появится отступ равный величине этого параметра. Для того что добиться этого эффекта необходимо к таблице (НЕ ячейке) применить css параметр <strong>border-spacing:10px;</strong>, который к сожалению не кроссбраузерный, как обычно подвел Internet Explorer.</p>
<p>Не стоит забывать, что некоторые атрибуты таблиц уже являются не рекомендуемыми deprecated согласно стандартам. Подробней можно прочитать в заметке <a href="http://zodios.net/htmlcss/ne-rekomenduemye-deprecated-tegi.html" target="_blank">Не рекомендуемые (deprecated) теги</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/cellpading-cellspacing-css.html/feed</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Удвоение отступа(margin) в Internet Explorer 6</title>
		<link>http://zodios.net/htmlcss/double-margin-bug.html</link>
		<comments>http://zodios.net/htmlcss/double-margin-bug.html#comments</comments>
		<pubDate>Sun, 28 Sep 2008 09:16:00 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[Bugs]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Internet Explorer]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=247</guid>
		<description><![CDATA[Те, кто использовал в верстке плавающие(float) блоки. Сталкивался с одним неприятным багом «всем любимого» браузера &#8211; Internet Explorer 6. Суть бага состоит в том, что при задании блоку float его отступ(margin) со стороны, в которую он отплывает, увеличивается вдове. Этот баг окрестили именем – «Double margin bug». Это удвоение отступа можно легко ликвидировать, об этом [...]]]></description>
			<content:encoded><![CDATA[<p>Те, кто использовал в верстке плавающие(float) блоки. Сталкивался с одним неприятным багом «всем любимого» браузера &#8211; Internet Explorer 6. Суть бага состоит в том, что при задании блоку float его отступ(margin) со стороны, в которую он отплывает, увеличивается вдове. Этот баг окрестили именем – «<strong>Double margin bug</strong>». Это удвоение отступа можно легко ликвидировать, об этом написано ниже.</p>
<p><span id="more-247"></span></p>
<p>Мне известны два адекватных способа его решения. Первый – самый логический это не использовать марджин у плавающих блоков, но это крайность. Второй адекватно действующий – присвоить блоку с margin свойство – display:inline. После этого проблема с отступом исчезнет.</p>
<p>Можно пойти еще дальше и использовать условные комментарии (подробней об условных комментариях можно прочитать в заметке &#8211; <a href="http://zodios.net/htmlcss/ifcomments.html" target="_blank">Условные комментарии для IE</a>), или хаки (подробней о хаках можно прочитать в заметке <a href="http://zodios.net/htmlcss/hacks.html" target="_blank">Хаки – краткий путь к кроссбраузерности?</a>) для того чтоб это присвоение было воспринято только в IE6.</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/double-margin-bug.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Дефолтные значения параметров CSS разных браузеров</title>
		<link>http://zodios.net/htmlcss/defoltnye-znacheniya-parametrov-css-raznykh-brauzerov.html</link>
		<comments>http://zodios.net/htmlcss/defoltnye-znacheniya-parametrov-css-raznykh-brauzerov.html#comments</comments>
		<pubDate>Thu, 25 Sep 2008 19:47:06 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=229</guid>
		<description><![CDATA[Многие верстальщики сталкиваются с проблемой что одинаковые конструкции в разных браузерах отображается по разному. Например величина отступа абзаца у разных браузеров разные. Для того чтоб иметь полное представление различий приводу ниже ссылку на таблицу со списком значений величин параметров которые у разных браузеров установлены по-умолчанию.

Таблица взята с ресурса css-class.com
Таблица величин параметров

]]></description>
			<content:encoded><![CDATA[<p>Многие верстальщики сталкиваются с проблемой что одинаковые конструкции в разных браузерах отображается по разному. Например величина отступа абзаца у разных браузеров разные. Для того чтоб иметь полное представление различий приводу ниже ссылку на таблицу со списком значений величин параметров которые у разных браузеров установлены по-умолчанию.</p>
<p><span id="more-229"></span></p>
<p>Таблица взята с ресурса <a style="text-decoration: line-through;" rel="nofollow" href="http://css-class.com" target="_blank">css-class.com</a></p>
<p><a style="text-decoration: line-through;" rel="nofollow" href="http://zodios.net/examples/cssdefault/cssdefault.htm" target="_blank">Таблица величин параметров</a></p>
<p><br class="spacer_" /></p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/defoltnye-znacheniya-parametrov-css-raznykh-brauzerov.html/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Как стилизировать списки при помощи CSS</title>
		<link>http://zodios.net/htmlcss/kak-stilizirovat-spiski-pri-pomoshhi-css.html</link>
		<comments>http://zodios.net/htmlcss/kak-stilizirovat-spiski-pri-pomoshhi-css.html#comments</comments>
		<pubDate>Mon, 22 Sep 2008 18:50:53 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=227</guid>
		<description><![CDATA[Многие сталкивались с необходимостью стилизировать список с помощью CSS. Например, есть список  с нумерацией, и нужно сделать, чтоб нумерация списка была большего размера шрифта,  чем само содержимое списка. Или есть список, который отмечается прямоугольником и нужно сделать прямоугольник зеленого цвета, а текст содержимого списка &#8211; черного.

Если задать цвет списка, или размер самому элементу [...]]]></description>
			<content:encoded><![CDATA[<p>Многие сталкивались с необходимостью стилизировать список с помощью CSS. Например, есть список  с нумерацией, и нужно сделать, чтоб нумерация списка была большего размера шрифта,  чем само содержимое списка. Или есть список, который отмечается прямоугольником и нужно сделать прямоугольник зеленого цвета, а текст содержимого списка &#8211; черного.</p>
<p><span id="more-227"></span></p>
<p>Если задать цвет списка, или размер самому элементу li, то оно будет относиться и для содержимого всего элемента. Посему единственный выход, который я  нашел, это внутрь списка поместить span, или другой элемент, которому задать стилизрование текста.</p>
<p>Нюанс состоит в том, что при стилизации нумерованного списка содержимое списка должно быть блочным элементом (подробней о том  какие элементы блочные  можно прочитать в заметке &laquo;<a href="http://zodios.net/htmlcss/inline-and-blockelements.html" target="_blank">Строчные &#8211; inline и блочные – block-level элементы</a>&laquo;), иначе возникнет нежелательный отступ у последней строки текста в списке. Это можно увидеть на примере.</p>
<p><a href="http://zodios.net/examples/liststyle/liststyle.html" target="_blank">Пример стилизации списка</a></p>
<p>Если кто-то знает другой, более изящный вариант, буду признателен за подсказку!</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/kak-stilizirovat-spiski-pri-pomoshhi-css.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Сокращения при написании CSS</title>
		<link>http://zodios.net/htmlcss/shortcss.html</link>
		<comments>http://zodios.net/htmlcss/shortcss.html#comments</comments>
		<pubDate>Fri, 12 Sep 2008 20:54:44 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=196</guid>
		<description><![CDATA[Синтаксисом CSS предусмотрено ряд свойств, который поддерживают сокращенное написание. Таким образом, можно сэкономить на размере файла стилей. При малых размерах файла стилей выигрыш незначительный, но если параметр повторяется пару сотен раз такое сокращение становиться значительным. Также сокращения позволяют сэкономить время на написание и чтения файла стилей.

Единицы измерения при значении параметра 0
При присвоении значения 0 какому-либо [...]]]></description>
			<content:encoded><![CDATA[<p>Синтаксисом CSS предусмотрено ряд свойств, который поддерживают сокращенное написание. Таким образом, можно сэкономить на размере файла стилей. При малых размерах файла стилей выигрыш незначительный, но если параметр повторяется пару сотен раз такое сокращение становиться значительным. Также сокращения позволяют сэкономить время на написание и чтения файла стилей.</p>
<p><span id="more-196"></span></p>
<h4>Единицы измерения при значении параметра 0</h4>
<p>При присвоении значения 0 какому-либо  параметру писать величину измерения после 0 необязательно. Например, нет необходимости писать margin:0px; если можно написать  margin:0;</p>
<h4>Margin &amp; Padding</h4>
<p>Всем известно,  что значении margin:10px;  создаст отступ в 10px со всех сторон блока. Но этот свойство может иметь и следующее написание “margin:10px 5px;” “ margin:10px 5px 7px;” “margin:10px 5px 7px 3px;”. На чем основано такое написание. Если после свойства  стоит   1 значение оно будет применено ко всем сторонам, если 2 первое будет относиться к верхней и нижней стороне, а второе к левой и правой. Если параметров 3  то первое значение будет относиться к верхней стороне, второе к левой и правой стороне, а третье к нижней стороне. Если параметров 4 то первое значение относиться к верхней стороне, второе к правой стороне, третье к нижней стороне, четвертое к левой стороне, то есть  параметры присваиваются к сторонам идя по часовой стрелке начиная с верха . Аналогично можно писать и свойство padding. Таким образом, можно сэкономить на написании margin-top,margin-right,margin-bottom,margin-left.</p>
<pre><code>
#someSyle {
    margin:10px;
    margin:10px 5px;
    margin:10px 5px 3px;
    margin:10px 5px 3px 2px;
}
</code>
</pre>
<h4>Border</h4>
<p>Сокращенное написание параметра &#8211;  border:5px solid #000. Где первый параметр  свойства толщина рамки, второй  тип рамки и третий цвет рамки. Стоит отметить ,что к этому свойству НЕ применимо предыдущее свойство. То есть, сожалению нельзя написать border:5px 2px 3px 4px solid #000. Но предыдущее свойство применимо к параметру border-width. Таким образом можно написать  border: solid #000; border-width: 5px 2px 3px 4px; Если рамка одинаковго цвета и типа но разной ширины. Если каждая сторона разной ширины, цвета, и типа то единственный выход – писать &#8211;  border-top:5px solid #0D5;  border-right:3px dotted  #FFD; border-bottom:4px dotted  #EF7; border-right:2px dotted  #C4D;</p>
<pre><code>#someSyle{
    border:5px solid #000;
    border-right:6px solid #4FD;
    border-width:10px 5px 3px 6px;}
</code>
</pre>
<h4>Background</h4>
<p>Сокращенное написание &#8211; background:#CCC url(images/bg.gif) no-repeat 3px 5px;. Где первый параметр цвет фона, второй параметр – фоновый рисунок, третий – как повторяется фон(repeat,no-repeat,repeat-x,repeat-y), четвертый – позиция фона первое число –позиция относительно левого края блока, второй – верхнего края.</p>
<pre><code>#someSyle{
    background:#CCC url(images/bg.gif) no-repeat 3px 5px;
}
</code>
</pre>
<h4>Font</h4>
<p>Сокращенное написание &#8211; font:italic bold 12px/24px Verdana, Arial, Helvetica; Обязательным является параметр, который указывает на название шрифта. Шрифты можно писать через запятую. Если первого указанного шрифта нет на компьютере пользователя, будет использоваться второй шрифт.<em>Очередность параметров должна быть такой как в примере иначе не будет работать и необходимо присутствие как минимум двух параметров. Параметр который идет после / задает line-height для текста.</em></p>
<pre><code>#someSyle{
    font:italic bold 12px/24px Verdana, Arial, Helvetica;
}
</code>
</pre>
<h4>List</h4>
<p>Сокращенный вид – list-style:square inside; Таким образом в одном свойстве можно комбинировать два параметра.</p>
<pre><code>#someSyle{
    list-style:square inside;
}</code>
</pre>
<h4>Color</h4>
<p>Цвета можно задавать названием цвета(red,green,gray). Но более рационально записывать цвета в шестнадцатеричном коде, то есть цвет вида #ffffff – white, #000000 – black. Таким образом, цвет задается в формате RBG(Red Blue Green) и можно сокращать коды цветов до вида #fff, #000</p>
<pre><code>#someSyle{
    color:#000;
    background:#fff;
}</code>
</pre>
<h4>Резюме</h4>
<p>Сокращения в каскадных таблицах стилей &#8211; инструмент которым незаслуженно пренебрегают. Не используя эти методы вы сами у себя воруете силы и время на формирования кода</p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/shortcss.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как выровнять блок-div по центру</title>
		<link>http://zodios.net/htmlcss/div-center.html</link>
		<comments>http://zodios.net/htmlcss/div-center.html#comments</comments>
		<pubDate>Fri, 12 Sep 2008 14:24:19 +0000</pubDate>
		<dc:creator>Orosi</dc:creator>
				<category><![CDATA[HTML&CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://zodios.net/?p=191</guid>
		<description><![CDATA[Необходимость выровнять какой-то блочный элемент по центру является не редкой в повседневной работе верстальщика. Многие начинающие верстальщики спотыкаются об то, что css-свойство text-align:center; для родительского элемента  приводит к выравниванию блока по центру только в Internet Explorer , в других браузерах это не приносит ожидаемого результата. Это связанно с тем, что во всех браузерах, кроме [...]]]></description>
			<content:encoded><![CDATA[<p>Необходимость выровнять какой-то блочный элемент по центру является не редкой в повседневной работе верстальщика. Многие начинающие верстальщики спотыкаются об то, что css-свойство <code>text-align:center;</code> для родительского элемента  приводит к выравниванию блока по центру только в Internet Explorer , в других браузерах это не приносит ожидаемого результата. Это связанно с тем, что во всех браузерах, кроме Internet Explorer,  свойство <code>text-align:center</code> применяется  только к строчным элементам. Подробней о том какие элементы относяться к строчным и в чем их особенность можно прочитать в заметке &laquo;<a href="http://zodios.net/htmlcss/inline-and-blockelements.html" target="_blank">Строчные &#8211; inline и блочные – block-level элементы</a>&laquo;</p>
<p><span id="more-191"></span></p>
<p>В этой заметке будут представлены возможные варианты, выравнивая блока по центру внутри другого блочного элемента. В конце заметки есть ссылка на реализацию примеров приведенных здесь.</p>
<h4>Вариант 1 (<em>align=”center”</em>)</h4>
<p>Суть метода в том,  что родительскому блоку (тому, в котором нужно выровнять блок по центру) присваивается атрибут <code>align=”center”</code>. Этот атрибут указывает на то, что все  содержимое блока должно быть выровнено по центру. Результат метода удовлетворяет ожидания. Недостатком является то что все содержимое всех внутренних блоков также будет выровнено по центру, тоесть прийдеться внутренним элементам переопределять выравнивание. Другим недостатком является то, что атрибут <code>align</code> недопустим при строгой(Strict) разметке (подробней о типах разметки можно прочитать в заметке «<a href="http://zodios.net/htmlcss/saga-o-doctype.html" target="_blank">Сага о doctype</a>») что приведет к не прохождению валидации.</p>
<h4>Вариант 2 (<em>margin: 0 auto;</em>)</h4>
<p>Этот метод  метода выравнивания <code>div</code> по центру является более эффективным,  чем предыдущий. Метод основан на том, что блоку, который нужно выровнять по центру применяется  css-свойство <code>margin:0 auto;</code>.  Метод основан на сокращенно представлении свойства (подробней читай в заметке «<a href="http://zodios.net/htmlcss/shortcss.html" target="_blank">Сокращения при написании CSS</a>»). Таким образом, если необходимо будет еще добавить только отступ сверху необходимо изменить на <code>margin:10px auto 0;</code> или на <code>margin:10px auto;</code> если отступ нужен сверху и снизу.</p>
<h4>Вариант 3 (<em>позиционирование и отрицательный отступ</em>)</h4>
<p>Для того чтоб выровнять блок по центру можно еще воспользоваться этим способом выравнивания блока по центру. Он заключается в том, что блок позиционируется в родительском элементе и потом сдвигается влево на 50%, но таким образом элемент будет размещен не совсем по центру и для того чтоб это изменить блоку присваивается отрицательный левый отступ равный половине ширины блока чтоб четко выровнять его по центру. Главное в этом методе не забыть присвоить блоку позиционирование.</p>
<pre><code>
.example3 {
    position:relative;
    left:50%;
    margin-left:-100px;
    width:200px;
    background:#FF6666;
    border:1px solid #FF0000;
}
</code>
</pre>
<h4>Вариант 4 (<em>Процентное соотношение</em>)</h4>
<p>Если блок, который нужно разместить по центру, имеет ширину в процентах можно воспользоваться этим легким  способом выравнивания блока по центру. Метод заключается в том, что блоку применяются боковые отступы равные половине ширины, оставшиеся от 100% после отнятии ширины блока. Скажем, если есть блок шириной 40%, то боковые отступы нужно сделать по 30% и тогда блок будет сцентрированный.</p>
<h4>Резюме</h4>
<p>Выбор способа выравнивания зависит от контекста решения проблемы и предпочтения верстальщика. Все представленные методы полностью кроссбраузерны.</p>
<p><a href="http://zodios.net/examples/divcenter/divcenter.html" target="_blank">Реализация методов</a></p>
]]></content:encoded>
			<wfw:commentRss>http://zodios.net/htmlcss/div-center.html/feed</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
	</channel>
</rss>
