• Страница 1 из 1
  • 1
Что такое Css
Olegan Дата: Понедельник, 02.04.2012, 15:41 | Сообщение # 1
  • Проверенный
  • Сообщений: 680
  • Репутация:
    19
  • Статус: Offline
Так что это такое - Сss? Cascading Style Sheets ( Таблицы Каскадных Стилей ). Css - это язык содержащий набор свойств для определения внешнего вида документа. С его помощью дизайнер имеет полный контроль над стилем и расположением каждого элемента веб страницы. Это гораздо проще использования обычного набора HTML тегов. Приведу пример: Вам нужно создать жирный красный подчеркнутый текст.

HTML пример:

Hello World

А если подобный стиль нужно использовать несколько раз? Хорошо если раз 5, а если 10-20? Вот тут нам и поможет Сss. Существует три вида таблиц стилей: Внутренние таблицы стилей, Глобальные таблицы стилей и Связанные таблицы стилей. Внутриние таблицы стилей ( Inline Style Sheets ) мало чем отличаются от HTML тегов. Глобальные ( Global Style Sheets ) определяют стиль элементов во всем документе. Связанные ( Linked Style Sheets ) могут быть использованы для нескольких документов и хранятся во внешнем файле. Подробнее об этом написано ниже.
Структура и правила
Селекторы (Selectors):

Любой элемент HTML может иметь CSS селектор. Селектор определяет стиль элемента, для которого он создан.

Пример:

H1 {color:red;size:20pt;}

Все элементы H1 в документе будут красного цвета, размером в 20 точек (pt , point).
Классовые селекторы (Class Selectors):

CLASS -- класс стилей в css. Для его определения в css используется знак "."+ имя.

Все селекторы могут иметь разные классы. Это позволяет одинаковым элементам иметь различные стили.

Пример:

H1.blue {color:blue;size:20pt;}

Все элементы H1 с атрибутом CLASS="blue" стануть синими.
Классы могут быть также описаны без привязывания их к определенным элементам.

Пример:

.green {color:green;}

В данном случае все элементы с указанным атрибутом CLASS="green" станут зелеными.
ID селекторы (ID Selectors):

ID -- индивидуально именованный стиль. C его помощью можно создавать стилистические исключения cреди элементов одного класса. Для определения в css используется знак "#"+ имя.

Индификаторы используются в основном для придания одному или нескольким элементам одного класса индивидуальных свойств. Скажем Вы создали класс blue -- синий курсив. Но вам понадобился жирный, подчеркнутый текст синим курсивом. Конечно, можно создать новый класс, но зачем? Проще описать ID. Например "boldunderline". И все элементы класса blue с значением ID "boldunderline" станут жирным подчеркнутым синим курсивом. Произойдет как бы синтез свойств класса blue и идификатора boldunderline.

Пример:



Пример



Hello! Welcome To My Homepage!


Will Be Soon


Under Construction





Как видно из примера, ID может быть использован без указания класса ( последний параграф примера ). Тогда параграф будет обладать только свойствами ID ( в примере - жирный, подчеркнутый текст ).
Контекстуальные селекторы (Contextual Selectors):

Контекстные селекторы - это сочетания нескольких обыкновенных селекторов. Стиль задается только элеметнам в заданной последовательности в зависимости от каскадного порядка.

Пример:

P EM {color:silver;}

В данном примере все элементы EM внутри элементов P будут иметь заданный стиль.

Придание нескольким элементам одинаковых свойств:

Скажем Вам нужно придать нескольким элементам Вашей веб страницы одинаковых свойств. В этом случае при определении элементоы перечисляутся через запятую.

h1,h2,h3,p,strong {color:green}

Все элементы h1, h2, h3, p и strong будут зелеными.

Псевдоклассы и псевдоэлементы :

Псевдокласс состоит из элементов одного типа, отвечаюшему определенному критерию. Псевдоклассы и псевдоэлементы при определении отделяются знаком ":" .

Список псевдоклассов и псевдоэлементов :

- Anchor Pseudo Classes -- Эти псевдоклассы элемента , обозначающего ссылки. Псевдоклассы этого элемента -- link ( линк ), active ( активная ссылка ), visited ( посещенный ранее URL ), hover ( при поднесении курсора, не работает в Нетскейпе ).

- First Line Pseudo-element -- first-line. Этот псевдоэлемент может быть использован с block-level элементами ( p, h1 и т.д. ). Он изменяет стиль первой строки этих элементов.

- First Letter Pseudo-element -- first-letter. То же самое что и first-line, только влияет не на всю строку, а только на первый символ.

Пример :

a:link,a:visited {color:blue}
a:active {color:red}
a:hover {text-decoration:none}

В данном примере все элементы Anchor (ссылки) будут синими. При нажатии ( в активном состоянии ) поменяют цвет на красный. И при подведении курсора мышки исчезнет подчеркивание. Очень эффектный прием.
Внутри таблиц стиля

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

HTML пример:

Hello World!

Результат:

Hello World!

Пример использования стиля внутри тэга:

Hello World

Результат:

Hello World!

Как можно заметить, код Inline Style Sheet Example получился больше чем HTML Example. Поэтому иногда разумнее использовать обычные HTML теги
Глобальные таблицы стилей

Глобальные стили задают вид элементов всего документа. Для этого используется тег

Этот заголовок написан крупным красным курсивом


Вот это слово - синие, a это -- жирное!!!



В данном примере все элементы H1 будут написаны крупным красным курсивым, все элементы с указанным классом BLUE будут синими , а а все элементы с индификатором ID="Bold" станут жирными.

Таблица стилей ссылок

Связанные таблицы стилей используются для придания нескольким документам одного стиля. Хронятся они в отдельном файле. Пример (файл styles.css):



Как видите, это очень похоже на Global Styles Sheets. Так оно и есть. Все что относилось к Глобальным стилям справедливо и здесь. В самих же документах делается ссылка на этот файл при помощи тега . Выглядит это так:

Пример:

File [ styles.css ]


File [ Index.html ]


Example &glt;/title> <br /> </head> <br /> <link rel="stylesheet" type="text/css" href="styles.css"> <br /> <body> <br /> [ Содержание Документа ] <br /> </body> <br /> </html></span> </td></tr> <tr><td class="postBottom" align="center"> </td><td class="postBottom"> <table border="0" width="100%" cellspacing="0" cellpadding="0"> <tr><td><a href="javascript:;" rel="nofollow" onclick="window.open('/index/8-1249', 'up1249', 'scrollbars=1,top=0,left=0,resizable=1,width=700,height=375'); return false;"><img alt="" style="margin:0;padding:0;border:0;" src="/design/forum_icons/p_profile.gif" title="Профиль пользователя" /></a> </td><td align="right" style="padding-right:15px;"></td><td width="2%" nowrap align="right"><a class="goOnTop" href="javascript:scroll(0,0);"><img alt="" style="margin:0;padding:0;border:0;" src="/design/forum_icons/p_up.gif" title="Вверх" /></a></td></tr> </table></td></tr></table></td></tr></table></div></div><div class="gDivBottomLeft"></div><div class="gDivBottomCenter"></div><div class="gDivBottomRight"></div> <table class="ThrBotTbl" border="0" width="100%" cellspacing="0" cellpadding="0"> <tr class="ThrBotRow1"><td colspan="2" class="bottomPathBar ThrBotCl11" style="padding-top:2px;"> <table class="ThrForumBarTbl" border="0" width="100%" cellspacing="0" cellpadding="0"> <tr class="ThrForumBarRow1"> <td class="forumNamesBar ThrForumBarCl11 breadcrumbs" style="padding-top:3px;padding-bottom:5px;"> <a class="forumBar breadcrumb-item" href="/forum/">Форум</a> <span class="breadcrumb-sep">»</span> <a class="forumBar breadcrumb-item" href="/forum/3">ОНЛАЙН-ДИСЦИПЛИНЫ</a> <span class="breadcrumb-sep">»</span> <a class="forumBar breadcrumb-item" href="/forum/21">Всё о Counter-Strike: Source</a> <span class="breadcrumb-sep">»</span> <a class="forumBarA" href="/forum/21-715-1">Что такое Css</a> <span class="thDescr">(Глава I >>)</span></td><td class="ThrForumBarCl12" > <script> function check_search(form ) { if ( form.s.value.length < 3 ) { _uWnd.alert('Вы ввели слишком короткий поисковой запрос.', '', { w:230, h:80, tm:3000 }) return false } return true } </script> <form id="thread_search_form" onsubmit="return check_search(this)" action="/forum/21-715" method="GET"> <input class="fastNav" type="submit" value="Ok" id="thread_search_button"><input type="text" name="s" value="" placeholder="Поиск по теме" id="thread_search_field"/> </form> </td></tr> </table></td></tr> <tr class="ThrBotRow2"><td class="ThrBotCl21" width="50%"> <ul class="switches switchesTbl forum-pages"> <li class="pagesInfo">Страница <span class="curPage">1</span> из <span class="numPages">1</span></li> <li class="switchActive">1</li> </ul></td><td class="ThrBotCl22" align="right" nowrap="nowrap"><form name="navigation" style="margin:0px"><table class="navigationTbl" border="0" cellspacing="0" cellpadding="0"><tr class="navigationRow1"><td class="fFastNavTd navigationCl11" > <select class="fastNav" name="fastnav"><option class="fastNavMain" value="0">Главная страница форума</option><option class="fastNavCat" value="1">СЕРВЕРА INTECH</option><option class="fastNavForum" value="58">     [CSS v34] Форум серверов</option><option class="fastNavForum" value="162">     [CS:GO] Форум серверов</option><option class="fastNavForum" value="163">     [MINECRAFT] Форум серверов</option><option class="fastNavCat" value="3">ОНЛАЙН-ДИСЦИПЛИНЫ</option><option class="fastNavForumA" value="21" selected>     Всё о Counter-Strike: Source</option><option class="fastNavForum" value="22">     Counter-Strike: Source - вопросы</option><option class="fastNavForum" value="157">     Всё о Counter-Strike: Global Offensive</option><option class="fastNavForum" value="160">     Всё о Counter-Strike 1.6</option><option class="fastNavForum" value="158">     Всё о Dota 2</option><option class="fastNavForum" value="153">     Всё о Minecraft</option><option class="fastNavForum" value="161">     Всё о CrossFire</option><option class="fastNavForum" value="2">     Форум клана INTECH</option><option class="fastNavCat" value="31">ТУРНИРЫ ОТ INTECH</option><option class="fastNavForum" value="117">     Fast awp cup 1x1 [CSS v34] (ЗАВЕРШЁН)</option><option class="fastNavForum" value="115">     Autumn awp monsters 2x2 [CSS v34] (ЗАВЕРШЁН)</option><option class="fastNavCat" value="95">Мусор</option><option class="fastNavForum" value="116">     Радио InTech.FM</option><option class="fastNavForum" value="57">     Новости и планы на будущее</option><option class="fastNavForum" value="96">     Корзина</option></select> <input class="fastNav" type="button" value="Ok" onclick="top.location.href='/forum/'+(document.navigation.fastnav.value!='0'?document.navigation.fastnav.value:'');" /> </td></tr></table></form></td></tr> <tr class="ThrBotRow3"><td class="ThrBotCl31"><div class="fFastLogin" style="padding-top:5px;padding-bottom:5px;"><input class="fastLogBt" type="button" value="Быстрый вход" onclick="loginPopupForm();" /></div></td><td class="ThrBotCl32" align="right" nowrap="nowrap"><form method="post" action="/forum/" style="margin:0px"><table class="FastSearchTbl" border="0" cellspacing="0" cellpadding="0"><tr class="FastSearchRow1"><td class="fFastSearchTd FastSearchCl11" >Поиск: <input class="fastSearch" type="text" style="width:150px" name="kw" placeholder="keyword" size="20" maxlength="60" /><input class="fastSearch" type="submit" value="Ok" /></td></tr></table><input type="hidden" name="a" value="6" /></form></td></tr> </table> <script type="text/javascript">function haveFiles(){var f = false;$("input.uplFileFl").each(function(){if ($(this).val()) f=true;});return f}document.addform.onsubmit = function(){var namewnd = "w" + Math.floor(Math.random()*999); _uWnd.alert('<img src="/.s/img/wd/3/ajax.gif" border="0" alt="Загрузка">','Загрузка',{name: namewnd, w: 250, h: 80, tm: 0}); $("#frF16").attr("disabled", true); if (haveFiles()) {_uPostForm($("form[name='addform']"), {success: function(dt){ parseResult(dt, namewnd);}})} else {$.post("/forum", $("form[name='addform']").serialize(), function(dt) {parseResult(dt, namewnd)})};return false;};function parseResult(dt, namewnd){var err = $("#frM2", dt).text(), thmurl = $("a:first", dt).attr("href"); if (err) {_uWnd.content(namewnd, '<center>'+err+'</center>'); _uWnd.setTitle(namewnd, 'Ошибка'); $("#frF16").attr("disabled", false); setTimeout(function(){ _uWnd.close(namewnd) },2000);} else if ($(dt).text().indexOf("Ответ добавлен") > -1) { $("textarea#message").val(""); $("form[name='addform'] input:file").val(""); _uWnd.content(namewnd, '<center>Добавлено</center>'); _uWnd.setTitle(namewnd, 'Успех'); $("#frF16").attr("disabled", false); setTimeout(function(){ _uWnd.close(namewnd) },2000); setTimeout(function(){ $(".gDivRight:first").load(thmurl + "?" + Math.floor(Math.random()*9999) + " .gDivRight:first"); setPnt(thmurl);}, 50);} else { _uWnd.content(namewnd, 'Во время отправки произошла обишка'); _uWnd.setTitle(namewnd, 'Не удалось'); $("#frF16").attr("disabled", false); setTimeout(function(){ _uWnd.close(namewnd) },2000); }};</script> </div><br /> <!--U1BFOOTER1Z--><div class="footer_c"> <div class="footer_l"> <div class="footer_r"> <div class="footer_inf"> <ul> <li><br></li><li><div align="center">ДИЗАЙН САЙТА ПОЛНОСТЬЮ ПРИНАДЛЕЖИТ ПРОЕКТУ ИНТЕЧ. ЛЮБОЕ КОПИРОВАНИЕ СТРОГО ЗАПРЕЩЕНО. КАРАЕТСЯ ПО ЗАКОНУ.</div></li> <li><div align="center">INTECH-TEAM.RU © ВСЕ ПРАВА ЗАЩИЩЕНЫ. </div></li><li><div align="center"><!-- "' --><span class="pb6dN8Dg"><a href="https://www.ucoz.ru/"><img style="width:80px; height:15px;" src="/.s/img/cp/svg/22.svg" alt="" /></a></span> </div></li></ul> </div> </div> </div> </div><!--/U1BFOOTER1Z--> </div> </body> </html> <!-- 0.0454340 (s753) -->