|
Начало
Увод
Съдържание
Въведение в Интернет
HTML
CSS
JavaScript
Perl
Полезни връзки
Речник на термините
|
HTML - CSS
Каскадни стилове. Достъп до каскадни
стилове във WEB документ. Основни елементи
на каскадните стилове.
Може би сте забелязали, че в материала досега доста
често се споменаваха каскадни стилове (CSS - Cascading Style Sheets).
Това е защото каскадните стилове позволяват в много по-добра степен контрол
върху елементите на страницата, като добавят и нови възможности за форматиране
на страницата. Пример за това може да е и страницата, която четете. Менютата
отляво и отдясно са изцяло направени с каскадни стилове. Ако се използваше
чист HTML за постигането на този ефект трябва да се използват таблици,
което би я усложнило значително. Друг положителен ефект от използването
на какскадни стилове е този, че ако се наложи да се промени дадено форматиране
е достатъчно да се промени само на едно място, а именно файла съдържащ
каскадния стил. Как става вграждането на каскадни стилове? Начините са
три: първият е написването им директно в тялото на документа чрез атрибута
STYLE="..."; вторият е написването им в заглавната част на документа,
чрез тага <STYLE>...</STYLE>; тритият начин е написването
им в отделен файл и указване пътя към този файл в заглавната част на документа
чрез тага <LINK>. Ето пример демонстриращ и трите начина :
Вграждане в таг:
<IMG STYLE="padding-left:5px" SRC="demo.jpg">
Описване в заглавната част:
<STYLE>
<!--
H1 {color: blue}
-->
</STYLE>
Връзка към външен файл с CSS:
<LINK REL="stylesheet" HREF="styles.css" TYPE="text/css">
В първия случай прилагането на стила ще се ограничи
само върху дадения елемет. Във втория случай стилът ще се приложи върху
всички тагове <H1>, които ще имат син цвят. Подобно е положението
и при третата форма на деклариране, с тази разлика, че стиловете се пишат
в отделен файл и прилагането им върху поече документи е улеснено. Възможно
и смесването на няколко метода за вграждане. Друга особенност е групирането.
То се прави с цел намаляване размера на файла и представлява групиране
на няколко елемента към един стил или/и няколко стила към един елемент
:
Пример за групиране на няколко елемента:
H1, H2, H3 { font-family: helvetica }
Пример за групиране на няколко стила:
H1 {
font-weight: bold;
font-size: 12pt;
line-height: 14pt;
font-family: helvetica;
font-variant: normal;
font-style: normal;
}
Друго важно свойство на стиловете е наследяването.
То се изразява в способноста на един стил да прилага своите свойства върху
всички тагове, които са затворени между тага, който прилага стила :
<H1>Наследяване <EM>на</EM> стил</H1>
В този случай стила на H1
ща бъде приложен и върху тага EM (освен ако
той няма свой собствен стил). Трябва да се има впредвид, че някои свойства
не се наследяват. Такова например е свойството 'background'.
HTML 2 добавя атрибут за прилагане на стилове: атрибута CLASS. За да може
да се използва този атрибут е необходимо с описанието на каскадния стил
да са дефинирани класове. Това става по следния начин :
<HTML>
<HEAD>
<TITLE>Title</TITLE>
<STYLE TYPE="text/css">
<!--
H1.pastoral { color: #00FF00 }
.blue {color: blue}
-->
</STYLE>
</HEAD>
<BODY>
<H1 CLASS="pastoral">Зелени</H1>
<DIV CLASS="blue">Синьо</DIV>
</BODY>
</HTML>
Първият клас може да се прилага само върху тага H1,
а втория - върху всеки един таг. Дръг начин за прилагането на стил е използването
на атрибута ID="...",който има гарантира уникална стойност в
документа :
#z98y { letter-spacing: 0.3em }
H1#z98y { letter-spacing: 0.5em }
<P ID=z98y>Широк текст</P>
В този случай селектора на тага P съвпада с първия
селектор, но не и с втория. Когато искаме дадено свойство за определен
таг, да има действие само в определени случаи може да се използва следния
синтксис:
H1 EM { color: red }
Тук текста поставен между EM
ще е червен само ако ЕМ е вътрешен на тага
H1.
Следва да бъдат обяснени основните свойства,
които могат да се използват в CSS1. Трябва да се има впредвид, че CSS
е разширен до версия 2, която добавя възможност за промяна на свойствата
на допълнителни елементи в страниците, като елементите на формите например..
За тези, които се интересуват оригиналната документация може да бъде намерена
на адрес http://www.w3.org/TR/REC-CSS2/css2.zip
.
Следват най-често използваните свойства :
'font-family' - дефинира шрифта. Може
да се прилага върху всички елементи и не се наследява. Стойност може да
име на шрифт или семейство от шрифтове. Ако името на шрифта включва интервали,
то трябва да се загради в кавички. Фамилиите шрифтове са : serif (Times),
sans-serif (Helvetica, Arial), cursive (Zapf-Chancery), fantasy (Western),
monospace (Courier).
BODY { font-family: "new century schoolbook",
serif }
'font-style' - дефинира стил
на шрифта. Прилага се върху всички елементи и се наследява. Възможните
стойности са :normal, italic, oblique.
H3 { font-style: italic }
'font-variant' - това свойство променя
буквите, така че изглеждат като големи букви, но с по-малък размер. Стойностите
са : normal и small-caps. Може да се прилага на всички елементи и се наследява.
'font-weight' - дефинира дебелината
на шрифта. Възможни стойности са :normal, bold, bolder, lighter, 100,
200, ..., 900.Може да се прилага на всички елементи и се наследява.
'font-size' - дефинира големина на
шрифта. Възможно е прилагането на абсолютен размер (xx-small, x-small,
small, medium, large, x-large, xx-large), относителен размер спрямо големината
по подразбиране (larger, smaller). Друг начин е дефинирането директно
с големина в пиксели(px),проценти(%) и размер(pt). Освен това големоната
може да се задава и спрямо външния елемент чрез em и ex.
'font' - обединява в себе си всичките
предишни свойства. Ето пример :
P { font: 12pt/14pt sans-serif }
P { font: 80% sans-serif }
P { font: x-large/110% "new century schoolbook", serif }
P { font: bold italic large Palatino, serif }
P { font: normal small-caps 120%/120% fantasy }
Този пример
демонстрира използването на тези свойства.
Следващите свойства променят цветовете и фона на
страницата:
'color' - променя цвета на текста на
елемента от страницата върху който е приложен.
'background-color' - променя цвета
на фона на елемента. Това свойство не се наследява.
'background-image' - дефинира
изображение, което да служи за фон. Стойноста е URL към изображението.
Това свойство не се наследява.
'background-repeat' - дефира начина
по който да се повтаря изображението поставено като фон. Възможните стойности
са : repeat (изобржението се повтаря по вертикала и хоризонтала), repeat-x
(само по хоризонтала), repeat-y (само по вертикала), no-repeat (изображението
не се повтаря). Не се наследява. Има смисъл само ако е дефинирано изображение
като фон.
'background-attachment' - дефинира
начина по който изображението се държи при скролиране. възможните стойности
са : scroll (изображението се скролира), fixed (при скролиране изображението
не променя положението си). Не се наследява. Има смисъл само ако е дефинирано
изображение като фон.
'background' - обединява в себе си
всички горни свойства.
Следват свойствата определящи това как ще изглежда
даден текст:
'word-spacing' - дефинира разстоянието
между отделните думи. Стойноста може да е в пиксели(px), сантиметри(cm)
и др. По подразбиране стойноста е normal.
'letter-spacing' - дефинира разстоянието
между отделните букви. Стойноста може да е в пиксели(px), сантиметри(cm)
и др. По подразбиране стойноста е normal.
'text-decoration' - задава допълнителна
декорация към текста. Стойности може да са :none (без декорация) , underline
(подчертаване), overline (надчертаване), line-through (зачертаване), blink
(мигащ текст).
'vertical-align' - задава вертикалното
подравняване на текста. Възможните стойности са :baseline (, sub, super,
top, text-top, middle, bottom, text-bottom.
'text-transform' - променя големината
на буквите. Възможни стойности са : capitalize (прави главна първата буква),
uppercase (прави главни всички букви), lowercase (прави малки всички букви),
none.
'text-align' - дефинира подравняването
на текста. Възможни стойности са : left, right, center, justify.
'text-indent' - дефинира отместването
на текста. Възможните стойности в пиксели, проценти и др.
Ето пример за използването
на тези свойства.
Следващите свойства се отнасят към обвивките, които
ограждат всеки един елемент. Например следното :
Това е външната обвивка.
Това е вътрешната обвивка.
Това отново е външната обвивка.
представлява две обвивки, от които външната е с жълт цвят ( поне е близък
до него) и с шрифт monospace, а вътрешната обвивка е с червен цвят и шрифт
sans-serif. Свойствата, които ще разгледаме сега се отнасят за параметрите
на тези обвивки :
'margin-top' , 'margin-right', 'margin-bottom',
'margin-left' - дефинират полета съответно отгоре, отдясно,
отдолу и отляво спрямо другите елементи на страницата. Възможните стойности
са auto, пиксели, проценти и др. Тези свойства не се наследяват.
'margin' - обединява всичките горни
свойства. Установяването на някаква стойност е равносилно на установяването
на всички тях с една и съща стойност.
'padding-top', 'padding-right', 'padding-bottom',
'padding-left', 'padding' - има същото действие и стойности,
но влияе върху разстоянията между границата на обвивката и елементите
вътре в нея.
'border-top-width', 'border-right-width', 'border-bottom-width',
'border-left-width', 'border-width' - определят дебелината
на границата на обвивката (черната линия около менюто на страницата).
Валидни стойности са : thin (тънка), medium (средна), thick (плътна),
както и директното задаване в пиксели.
'border-color' - дефинира цвят на границата.
'border-style' - дефинира стил на границата.
Валидни стойности са: none (няма граница), dotted (границата е съставена
от точки), dashed (границата е съставена от тирета), solid (границата
е плътна линия), double (границата е двойна линия), groove (3D жлеб),
ridge (3D гребен), inset (3D прилив), outset (3D отлив).
'border-top', 'border-right', 'border-bottom',
'border-left', 'border' - тези свойства директно задават дебелината,
стила и цвета на границата съответно за горната, дясната, долната, лявата
и всички заедно. Ето и пример :
P { border: solid red }
P {
border-top: solid red;
border-right: solid red;
border-bottom: solid red;
border-left: solid red
}
Ето пример за използването
на тези свойства.
Това са основните и най-често използвани свойства. Всяко
от тях може да се задава чрез няколко вида мерни единици. Най-често използвана
от тях е пикселите (например 10px). Тя принадлежи към т.нар. относителни
единици. Това е така защто пикселите се отнасят към общите пиксели на
страницата, които зависят от резолюцията на екрана на потребителя. Други
релативни единици са em и ex, които се отнасят към големината на шрифта.
Друг тип единици са абсолютните. Към тях се отнасят сантиметрите (cm),
милиметрите (mm), инчовете (in) и пунктовете (pt). Отделна група са процентните
единици. Те могат да са с положителен и отрицателин знак и се отнасят
винаги относително към другите елементи на страницата.
|
CSS
|