CSS

Аббревиатура CSS расшифровывается, как Cascading Style Sheets или же, в русском переводе, как каскадные таблицы стилей. Что же это такое и для чего этот язык был в свое время придуман? 

Как известно, разметка веб документа осуществляется с помощью тегов языка HTML. Т.е. с помощью HTML мы создаем структуру наших документов(вебстраницы). Например, в чистом HTML мы можем задавать заголовки через теги H1-H6, абзацы и другие элементы структуры документов, и даже придать им нужный нам вид в браузере. 

Но время диктовало необходимость использования в HTML все новых и новых атрибутов визуального оформления, которые сильно захламляли исходный код. В связи с этим был предложен другой, более перспективный вариант развития - создание отдельного языка стилевой разметки CSS. И этот вариант имел ряд преимуществ перед простым наращиванием количества атрибутов оформления. 

Почему? А вы вспомните, как можно в чистом HTML задать цвет фрагменту текста? Правильно, с помощью тега Font и атрибута Color. А если вы хотите покрасить в нужный цвет сразу несколько абзацев в вашем тексте? 

Тогда придется внутри каждого из них (тег абзаца является блочным, а значит его нельзя будет помещать внутри строчного элемента Font) вставлять теги Font с нужным значением цвета в атрибуте Color. 

Все это жутко будет загромождать исходный код, что очень и очень нежелательно, ибо пострадает скорость загрузки сайта, а на коммуникационное оборудование интернета будет создаваться излишняя нагрузка. На это разработчики спецификаций Html 4.01 из валидатора W3C "пойтить" не могли. 

Поэтому они придумали следующий выход из создавшейся ситуации. Разработчики из W3C решили оформить все визуальные представления web документа в виде специального языка стилевой разметки, который назвали каскадными таблицами стилей или же попросту CSS (читается как си-эс-эс). 

Суть технологии в следующем - подключая язык стилевой разметки к любым документам (страницам), мы сможем задавать визуальное представление всех тех элементов (создаваемых HTML тегами), которые будут встречаться в этом документе. 

CSS не является языком разметки, в том понимании, как, например, Html. Это язык именно стилевой разметки - у него свой синтаксис, свое внутреннее содержание и во многом он будет сильно отличаться от уже изученного ранее. 

Кроме того, по сравнению с HTML, язык стилевой разметки намного сложнее. В нем очень много нюансов, которые нужно будет знать окромя базовых понятий. В HTML никаких особых нюансов не было - изучили все элементы и можете спокойно работать с кодом. Мне кажется, что CSS можно сравнить с шахматами - мало знать, как ходят все фигуры, надо еще и уметь играть.