HTML описва съдържанието, CSS описва визуализацията. Тоест:
За да можем лесно да стилизираме дадена страница избираме компонентите, които искаме да стилизираме (чрез някакъв селектор) и задаваме стойности на property-тата, които искаме да променим. Съответно браузъра ще ги промени на всички елементи, които е match-нал даденият селектор.
Има 3 начина на използване на CSS:
можете да комбинирате няколко селектора в един
Има много, но като за начало ще споменем само тези
Следващия път ще споменем и още някои. Ако ви е интересно ето ги всички (w3 ref)
Като най-лесни ще започнем с цветовете. Има 4 стандартни начина за дефиниране на цвят:
Внимавайте ако използвате проценти при височини - ако родителя няма зададена височина и използвате проценти може да има лоши последствия.
color
- цвят на текстаtext-decoration
- none / underline / overline / line-throughtext-align
- left / right / center / justifytext-transform
- none / uppercase / lowercase / capitalizefont-style
- normal / italicfont-weight
- normal / bold - има и други стойностти, но при повечето шрифтове те са равни на една от тезиfont-size
- размер на шрифтаline-height
- височина на редаfont-family
- кой точно шрифт да се използва ("Times New Roman", Verdana, Consolas, Lucida Console, Arial и тн) - ако изредите няколко ще се използва първия наличен. Позволява и още 2 стойности - serif
и sans-serif
.font
- кратка версия на последователността font-style font-weight font-size/line-height font-family
- задължителни са само font-size и font-familyfont: italic bold 16px/30px Verdana, Consolas, sans-serif;
или пък просто font: 16px Verdana;
background-color
- цвят на фонаbackground-position
- x и у позициониране на картинка ако има такава - става чрез думи като top left center
или проценти за позиция на центъра или пиксели отместване demobackground-repeat
- repeat-x, repeat-y, repeat, no-repeat, fixedbackground-attachment
- fixed / scrollbackground-image
- url("...")
background: color position repeat attachment image
display:none
- елементът е скрит и страницата се рендерира все едно той въобще не съществуваdisplay:inline
- елементът се разглежда като обикновен текст и следващите го елементи продължават непосредствено след него (вдясно от последния символ)display:block
- елементът се разглежда като правоъгълник - той има width и height property-та и елементите след него продължават на долния редdisplay:inline-block
- средно аритметично между първите 2. Елементът има височина и ширина, но откъм гледна точка на следващите елементи е все едно, че е бил inline и те продължават вдясно от негоdisplay:table
, display:table-row
, display:table-cell
- показват се както биха се показвали съответните елементи на таблицаdisplay: flex
, display: grid
- ще обясним следващия път - не ги използвайте за домашно CSS 1border-top-width
, padding-right
, margin-bottom
etc.margin: top right bottom left
(часовникова стрелка, trbl като trouble)margin: top left/right bottom
margin: top/bottom left/right
margin: all
position
- static / relative / absolute / fixedposition: static
- Това е по default. Не позволява отместване.position: relative
- Позволява отместване (транслация) спрямо текущата позиция в дадената посокаposition: absolute
- Абсолютно позициониране спрямо най-близкия родител със зададен position (!=static). Стойностите trbl задават разстоянието до съответния край на родителяposition: fixed
- Фиксира елемента на дадената позиция на екрана. Стойностите trbl задават разстояние до съответния край на екрана (viewport-a) - не работи добре в някои мобилни браузъри.clearfix:after { content: ""; visibility: hidden; display: block; height: 0; clear: both; }