cursul 4 stiluri cascadate – css (cascading styling...
Post on 21-Oct-2019
39 Views
Preview:
TRANSCRIPT
Cursul 4
Stiluri cascadate – CSS (Cascading Styling Sheets)
Introducere • CSS - Cascading Style Sheets • HTML a fost creat pentru a defini conţinutul documentului • Stilurile definesc cum vor fi afişate elementele HTML • Foile de stiluri externe – fişiere CSS • Sintaxa CSS trebuie respectată cu stricteţe!
Atribute standard ale elementelor HTML
Atributul Valoarea Descriere
class numele_clasei Specifică un nume de clasă pentru un element HTML
id id Specifică un identificator unic pentru un element
style definiţie_de_stil Specifică un stil pentru un element
title text Specifică informaţii suplimentare despre un element
4.1. Sintaxa CSS
• O regulă CSS este formată din două părţi: o un element de selecţie o un element declarativ (format din două sau mai multe declaraţii)
• Fiecare declaraţie este compusă dintr-o proprietate şi valoarea acesteia, proprietatea reprezentând atributul de stil ce se doreşte modificat.
• Declaraţiile CSS se termină cu caracterul „;”. • Grupurile de declaraţii sunt încadrate de acolade. • Comentariile CSS se încadrează cu caracterele „/*” şi „*/”. • O proprietate poate avea mai multe valori alternative (suport pentru
flexibilitate)
P {color:red; text-align:center;}
H2 { font-family: Arial, Helvetica, sans-serif }
Se recomandă ca ultima alternativă să fie cât mai generală (în acest caz familia de fonturi Sans Serif). Dacă navigatorul nu găseşte nici o potrivire, vor fi considerate valorile implicite.
4.2. Nivelele CSS
• CSS1 (Cascading Style Sheets - level 1) – mecanism simplu care permite autorilor şi utilizatorilor paginilor Web să ataşeze acestora stiluri (de exemplu, fonturi, culori şi spaţieri). Este uşor de înţeles şi de folosit de designerii Web şi exprimă stilurile conform terminologiei editării computerizate.
• CSS2 (Cascading Style Sheets - level 2) – generalizare (extensie)
a primului nivel de foi de stiluri, aducând în plus facilităţi de moştenire a foilor de stiluri, efecte vizuale, poziţionări şi paginări, integrarea mai multor tipuri de medii (suport pentru sunet).
• CSS3 (Cascading Style Sheets - level 3)
4.3. Moduri de definire ale stilurilor cascadate
a. definire în antetul documentului Stilurile se declară cu ajutorul elementului <style> în care se
amplasează elementele de selecţie (elementele HTML asupra cărora se definesc stilurile) urmaţi de definiţiile de stil (de forma proprietate: valoare)
Stilurile se definesc în antetul documentului atunci cînd ele sunt unice pentru acel document.
<html>
<head>
<title>Foi de stil</title>
<style type="text/css"> h2 { font-family: arial; font-style: italic; color: green }
p {margin-left:20px;} body {background-image:url("images/back40.gif");} hr {color:sienna;}
</style> </head>
<body>
<h2>Este verde, italic si arial.</h2>
<p>
<h2>Si acesta este la fel...</h2>
</body>
</html>
b. inserţie în cadrul unui element HTML (in-line) Stilulurile pot fi definite prin intermediul atributului style pentru un
anumit element HTML. În cele mai multe cazuri aceasta e metoda de a modifica stilurile globale definite.
Atributul style poate conţine orice proprietate CSS. Un dezavantaj major al acestei metode este faptul că se amestecă conţinutul de prezentat cu forma (stilul) în care va fi prezentat => metodă rar folosită.
<html>
<head>
</head>
<body>
<h2 style="font-family: arial; font-style: italic; color: green"> Acesta este un titlu verde, italic şi arial...</h2>
<p>
<h2>Pe când acesta nu este!</h2>
</body>
</html>
c. definirea stilurilor într-un fişier extern (de tip .CSS)
Stilurile sunt definite în exteriorul documentului HTML, prin intermediul unui fişier .css. Fişierul .css ce este inclus în documentul HTML prin intermediul elementului <link>. Metoda este folosită în cazul în care aceleaşi stiluri sunt aplicate mai multor documente HTML.
Fişierul .CSS nu trebuie să conţină elemente HTML. Sintaxa trebuie respectată cu stricteţe! Nu trebuie să existe spaţii între valoarea numerică a unei proprietăţi şi unitatea de măsură!
stiluri.css
h2 {font-family: arial; font-style: italic; color: green}
p {text-indent: 10px;}
document.html
<html>
<head>
<link rel="stylesheet" type="text/css" href="stiluri.css" title="Foaie de stiluri"> </head>
<body>
<h2>Un titlu verde, italic şi arial...</h2>
<p>
<h2>altul, la fel.</h2>
</body>
</html>
d. importare a unui fişier de stiluri Folosind facilitatea de importare din CSS, se poate include o foaie
de stiluri astfel:
<html>
<head>
<style text="text/css">
<!--
@import url("foaie.css")
-->
</style>
</head>
...
</html>
4.4. Cascadarea stilurilor
Este posibil ca pentru acelaşi element HTML să fie definite mai multe stiluri
• fişier .css • elementul <style> • atributul style
Ca urmare, documentul HTML va avea stilurile definite conform unei foi de stiluri virtuale obţinute prin cascadarea definiţiilor folosite.
• Stilurile definite implicit de navigator - prioritate minimă
• Stilurile definite prin fişier .CSS • Stilurile definite în elementul <style> (în interiorul elementului
<head>) • Stilurile definite prin atributul style (aparţinând unui element
HTML din interiorul elementului <body>) – prioritate maximă Dacă legătura către fisierul .css se află în document după elementul
<style>, stilurile definite extern vor avea prioritate mai mare şi vor suprascrie stilurile definite în interiorul elementului <style>!!
Exemplu de cascadare a stilurilor Stilurile definite extern: h3
{
color:red;
text-align:left;
font-size:8pt;
}
Stilurile definite intern (în elementul <style>): h3
{
text-align:right;
font-size:20pt;
}
Stilurile obţinute în urma cascadării: color:red;
text-align:right;
font-size:20pt;
4.5. Elementele de selecţie de tip id şi class
Permit definirea de stiluri într-o manieră generală, acelaşi stil putând fi aplicat unor elemente HTML diferite. Elementul de selecţie de tip id
• Este utilizat pentru a specifica stilul pentru un singur element, în mod unic.
• Utilizează atributul id al unui element HTML • Se defineşte prin intermediul construcţiei
etichetă_html#nume_id { declaraţii_CSS } stilul fiind aplicat elementului HTML cu eticheta etichetă_html şi cu atributul id = nume_id
• etichetă_html este opţional
<html>
<head>
<style type="text/css">
#stil_1 { text-align:center; color:red; } </style>
</head>
<body>
<p id="stil_1">Paragraf centrat de culoare roşie</p> <p>Paragraf cu stil determinat de navigator.</p>
</body>
</html>
Elementul de selecţie de tip class
• Este utilizat pentru a specifica stilul pentru un grup de elemente. • Utilizează atributul class al unui element HTML • Se defineşte prin intermediul construcţiei
etichetă_html.nume_class { declaraţii_CSS }
stilul fiind aplicat elementelor HTML cu eticheta etichetă_html şi atributul class = nume_class
• etichetă_html este opţional
<html>
<head>
<style type="text/css">
.centrat { text-align:center; } </style>
</head>
<body>
<h1 class="centrat">Titlu centrat</h1> <p class="centrat">Paragraf centrat.</p> </body>
</html>
4.6. Selectori contextuali
Elementele HTML pot fi imbricate în cadrul unei element de selecţie cu scopul de a crea stiluri particulare:
<html>
<head>
<style type="text/css">
p em { color:blue } </style>
</head>
<body>
<p>Un paragraf care este albastru doar <em>aici</em>...</p> <em>Acesta e italic si atât!</em>
</body>
</html>
Textul se va colora în albastru doar dacă în interiorul elementului
<p> se va afla elementul <em>.
4.7. Gruparea elementelor de selecţie Elementele de selecţie pot fi grupate cu scopul de a reduce mărimea şi redundanţa unei foi de stil, elementele fiind separate prin virgule h1, h2, a, td {
font-family:arial;
font-size:16pt;
color:green;
}
Dacă se doreşte să se adauge unui element particular alte modalităţi de formatare, se poate adăuga încă o regulă: h1, h2, a, td {
font-family:arial;
font-size:16pt;
color:green;
}
h1 { font-style:italic }
Definirea stilurilor pentru “background”
Proprietatea Descriere Valori posibile
background Setează toate proprietăţile
pentru background
background-color
background-image
background-repeat background-attachment
background-position
inherit
background-attachment
Indică dacă imaginea de
background este fixă sau se
deplasează odată cu textul
scroll
fixed
inherit
background-color Culoarea de background color-rgb, color-hex
color-name, transparent, inherit
background-image Imaginea de background url(URL)
none, inherit
background-position Poziţia de start a imaginii de
background
top left, top center, top right, center left
center center, center right
bottom left, bottom center
bottom right, x% y%
xpos ypos,inherit
background-repeat Indică dacă şi cum este repetată
imaginea de background
Repeat
repeat-x, repeat-y
no-repeat, inherit
Definirea stilurilor pentru text
Proprietatea Descriere Valori posibile
color Culoarea textului color
line-height Distanţa dintre linii normal, number
length, %
letter-spacing Creşte sau descreşte spaţiul dintre caractere normal
length
text-align Alinierea textului left, right
center, justify
text-decoration Adaugă decoraţiuni la text
none, underline
overline, line-through
blink
text-indent Deplasarea la dreapta a primei linii din pext length
%
text-transform Controlează apariţia în minuscule sau
majuscule
none, capitalize
uppercase, lowercase
vertical-align Alinierea pe verticală a elementului
baseline, sub, super
top, text-top, middle
bottom, text-bottom
length
%
word-spacing Modifică spaţiul dintre cuvinte normal
length
Definirea stilurilor pentru fonturi
Proprietatea Descriere Valori posibile
font Setează toate proprietăţile fontului
font-style, font-variant
font-weight
font-size/line-height
font-family
caption, icon, menu
message-box, small-caption
status-bar, inherit
font-family Familia fontului family-name, generic-family, inherit
font-size Dimensiunea fontului
xx-small, x-small
small, medium, large
x-large, xx-large
smaller, larger
length, %, inherit
font-style Stilul fontului normal, italic
oblique, inherit
font-variant Specifies whether or not a text should be
displayed in a small-caps font normal, small-caps, inherit
font-weight Lăţimea fontului
normal, bold, bolder, lighter
100, 200, 300, 400, 500
600, 700, 800, 900, inherit
Definirea stilurilor pentru liste
Proprietatea Descriere Valori posibile
list-style Setează toate proprietăţile pentru o listă list-style-type,list-style-position
list-style-image, inherit
list-style-image Specifică o imagine ce va marca fiecare
element din listă
URL
none, inherit
list-style-position
Indică dacă marcatorii elementelor din
listă apar în interiorul sau în exteriorul
listei
inside
outside
inherit
list-style-type Indică tipul de marcator folosit pentru
elementele din listă
none, disc, circle
square, decimal
decimal-leading-zero
armenian, georgian
lower-alpha, upper-alpha
lower-greek, lower-latin
upper-latin, lower-roman
upper-roman, inherit
top related