Как использовать CSS
Каскадные таблицы стилей (CSS) — язык описания внешнего вида веб-документа. CSS используется создателями веб-страниц для задания цветов, шрифтов, расположения отдельных блоков и других аспектов представления внешнего вида этих веб-страниц. Основной целью разработки CSS являлось разделение описания логической структуры веб-страницы (которое производится с помощью HTML или других языков разметки) от описания внешнего вида этой веб-страницы (которое теперь производится с помощью формального языка CSS).
Чтобы статья не была утомительной, пробегусь тезисами по основным моментам. Итак, стиль страницы можно подгружать как из отдельного файла с помощью тега link
<link type='text/css' rel='stylesheet' <b>href='URL.css'</b> />
так и с помощью тега style (для Blogger — в шаблоне <b:skin>)
<style type='text/css'>   ... ... ... </style>
или атрибута style, которым не рекомендуется злоупотреблять, поскольку это усложняет поиск нужного фрагмента для корректировки и ведёт к повышению времени загрузки страницы в браузере, то есть стили желательно прописывать до </head>
<div style=" ... ... ... "> контент </div>
Стили выполняются в том же порядке, в котором читаются: сверху вниз, слева направо. Например,
<html>
  <head>
    <title>Как использовать css</title>
    <style type="text/css">
      div { 
        color: green; 
        color: red; /* если бы не был указан атрибут style, то цвет текста был бы красным, а не зелёным */
      }
    </style>
  </head>
  <body>
    <div style="color: blue;">синиц цвет текста</div>
  </body>
</html><style type="text/css">
  #demoID { color: red; } 
  .demoCLASE { color: green; } 
</style>
<div id="demoID" class="demoCLASE"> содержимое </div>Приоритет отдаётся более узкой записи
<style type="text/css">
  #demoID.demoCLASE { color: red; } 
  #demoID { color: green; } 
</style>
<div id="demoID" class="demoCLASE"> содержимое </div>id в отличии от class нельзя использовать два раза
Не правильно
<style type="text/css">
  #demoID { color: red; } 
</style>
<div id="demoID"> содержимое </div>
<div id="demoID"> содержимое </div>Правильно
<style type="text/css">
  #demoIDRAZ { color: red; }
  #demoIDDVA { color: red; } 
</style>
<div id="demoIDRAZ"> содержимое </div>
<div id="demoIDDVA"> содержимое </div>Оптимально. Объединяем два элемента через запятую, поскольку они имеют одинаковые стили.
<style type="text/css">
  #demoIDRAZ, #demoIDDVA { color: red; }
</style>
<div id="demoIDRAZ"> содержимое </div>
<div id="demoIDDVA"> содержимое </div>Может быть и так
<style type="text/css">
  #demoIDRAZ, .demoDVA { color: red; }
</style>
<div id="demoIDRAZ"> содержимое </div>
<div class="demoDVA"> содержимое </div>И совсем другой результат при отсутствии запятой
<style type="text/css">
  #demoIDRAZ .demoDVA { color: red; }
</style>
<div id="demoIDRAZ"> содержимое </div>
<div class="demoDVA"> содержимое </div>
<div id="demoIDRAZ"><div class="demoDVA"> содержимое </div></div>
<div class="demoDVA"><div id="demoIDRAZ"> содержимое </div></div>Контекстные селекторы (второй пример)
div { color: red; }
div p { color: red; }<div> содержимое </div> <div> содержимое <p> содержимое </p> </div>
Есть ли различия между этими двумя вариантами?
.demo { color: red; }
p.demo { color: red; }<div class="demo"> содержимое </div> <p class="demo"> содержимое </p>
<div class="demo"> содержимое </div> <p class="demo"> содержимое </p>
Каковы различия между
.demo p { color: red; }
p.demo { color: red; }<div class="demo">   <p> красная палитра </p>   <span> любого другого цвета </span>   <p> красная палитра </p> </div>
Аналогично с псевдоклассом :hover (изменения производятся при наведении мышки).
<style type="text/css">
.demo { color: red; }
.demo:hover { color: blue; } 
</style>
<span class="demo"><div class="demo">
  <p> Образец как использовать CSS <span>текст в span</span> и далее. </p>
</div></span><style type="text/css">
.demo { color: red; }
.demo:hover span { color: blue; } 
</style>Между ними нет различия.
<style type="text/css">
.demo { background: red; }
.raz { color: yellow; }
.dva { color: white; }
</style>
<div class="demo raz"><span class="demo2 raz">содержимое</span></div>
<div class="demo dva"><span class="demo2 dva">содержимое</span></div>
<style type="text/css">
.raz { color: yellow; background: red; }
.dva { color: white; background: red; }
</style>
<div class="raz"><span class="raz1">содержимое</span></div>
<div class="dva"><span class="dva1">содержимое</span></div>Стили применяются только для тега с определённым атрибутом.
<style type="text/css">
p[align="center"] { color: red; }
</style>
<p> содержимое </p>
<p align="center"> содержимое </p>Если свойство состоит из нескольких параметров, то разделять их должны пробелы.
div { 
  background: #AAA url() no-repeat left top;
}Вот этот вариант не будет функционировать в IE, поскольку нет пробела между url()no-repeat:
div { 
  background: #AAA url()no-repeat left top;
}Все свойства заканчиваются точкой с запятой (;).
a {
  color: #AAA;
  outline: none;
  text-decoration: underline;
}Комментарии в CSS выглядят иначе, нежели в HTML.
<style>   /* это комментарий */ </style>
В тег <style> нельзя включать другие теги.
<b:skin><![CDATA[   .......   <style type="text/css">     ... ... ...   </style>   ....... ]]></b:skin>

 
  
 