Stíluslapok (CSS) a webfejleszétben

Slides:



Advertisements
Hasonló előadás
HTML nyelv Hiper-Text Markup Language 1. óra.
Advertisements

HTML nyelv.
Weblap szerkesztés HTML oldal felépítése Nyitó tag Záró tag Nyitó tag Záró tag oldalfej tözs.
A társadalmi tényezők hatása a tanulásra
MATEMATIKA Év eleji felmérés 3. évfolyam
Bekezdésformázás Név: Szarvas Nóra 8/a Felkészítő tanár: Salamon Róza
FRAME-k (keretek). FRAME-k A frame-ek (keretek) segítségével a képernyőt felosztva egyszerre jeleníthetünk meg több webes dokumentumot a képernyőn. Fejlec.html.
Az új történelem érettségiről és eredményeiről augusztus Kaposi József.
Utófeszített vasbeton lemez statikai számítása Részletes számítás
ELTE IK, Web-fejlesztés I. kurzus 1. 2  Az a HTML állomány, amelyet átalakítunk, a következő címről letölthető: 
A tételek eljuttatása az iskolákba
Amit a HTML-ről érdemes tudni
Honlap készítés Érdekességek.
Stílus, mesteroldal, témák
HTML nyelv.
STÍLUSOK Tulajdonságok és értékek. Színek megadási módjai H1 {color: #CCF150} H1 {color: rgb(204,241,80)} H1 {color: rgb(80%,95%,30%)} H1 {color: red}
Leírónyelvek: HTML és XHTML
© BZ, 2006Stíluslapok használata1 Váltsunk stílust! Stíluslapok a webszerkesztésben.
Készítette: Rummel Szabolcs
VÁLOGATÁS ISKOLÁNK ÉLETÉBŐL KÉPEKBEN.
Hernyák Zoltán XML és HTML.
WEBOLDALFEJLESZTÉS
HTML elemek Linkek, táblázatok és képek Forrás, amelyből össze lett állítva a prezentáció szövege és képei:
Készítette: Nagy-Szakál Zoltán 2007.
1. IS2PRI2 02/96 B.Könyv SIKER A KÖNYVELÉSHEZ. 2. IS2PRI2 02/96 Mi a B.Könyv KönyvelésMérlegEredményAdóAnalitikaForintDevizaKönyvelésMérlegEredményAdóAnalitikaForintDeviza.
A HTML alapjai Havlik Barnabás Készítette:
HTML dokumentum felépítése
Salamon Róza felkészítő tanár
HTML oldal felépítése Készítette: Pataki Arnold
Bekezdésformázás Nevem: Berkes András Speciális kategória
,,Én így tanítanám az informatikát”
Bevezetés a Stíluslapok használatába - gyakorlati feladatsor
Sárgarépa piaca hasonlóságelemzéssel Gazdaság- és Társadalomtudományi kar Gazdasági és vidékfejlesztési agrármérnök I. évfolyam Fekete AlexanderKozma Richárd.
Webszerkesztés Stíluslapok (CSS).
DRAGON BALL GT dbzgtlink féle változat! Illesztett, ráégetett, sárga felirattal! Japan és Angol Navigáláshoz használd a bal oldali léptető elemeket ! Verzio.
CSS.
szakmérnök hallgatók számára
Weblapok elrendezésének, dizájnjának kialakítása Borsi Katalin webfejlesztő, oktató NetAcademia Oktatóközpont.
Logikai szita Izsó Tímea 9.B.
XHTML – a tanultak összefoglalása
XHTML 1. óra. Miért térjünk át HTML-ről XHTML- re? HTML-szabványban tartalom és forma összemosódott HTML 4.0 szabványban stíluslapok használatát javasolták.
A <DIV> tag és formázás CSS-sel
7. Házi feladat megoldása
CSS A CSS bemutatása.
HTML nyelv.
Hyper Text Markup Language
Hyper Text Markup Language
A klinikai transzfúziós tevékenység Ápolás szakmai ellenőrzése
Web-grafika II (SVG) 1. gyakorlat
Web-grafika II (SVG) 8. gyakorlat Kereszty Gábor.
1. Melyik jármű haladhat tovább elsőként az ábrán látható forgalmi helyzetben? a) A "V" jelű villamos. b) Az "M" jelű munkagép. c) Az "R" jelű rendőrségi.
Készítette: Turócziné Kiscsatári Nóra
Az NVU webszerkesztő program
Html nyelv (HyperText Markup Language)
Gazdasági informatikus - Szövegszerkesztés 1 Hosszú dokumentumok kezelése.
Első lépések a szövegszerkesztő használatában
Táblázatok.
> aspnet_regiis -i 8 9 TIPP: Az „Alap” telepítés gyors, nem kérdez, de később korlátozhat.
Készítette: Földi Gergely Felkészítő: Antal Zoltán Szentpéterúri Általános Iskola Szentpéterúr, Kossuth Lajos Utca 13. Kedvenc szerkesztő szoftverem.
Weblapkészítés alapjai
Gazdasági informatikus - Szövegszerkesztés 1 Bekezdések formázása 3.
Java web programozás 2..
SZÖVEGSZERKESZTÉS IV. ~ BEKEZDÉSFORMÁZÁS ~
A Mozilla magyar nyelvű szerkesztőjének használata
A <DIV> tag és formázás CSS-sel
Alkalmazott Informatikai Tanszék
CSS Cascading Style Sheet HTML.
Cascading Style Sheet.
Html parancsok.
Táblázatok A táblázat megadása a tag használatával lehetséges. A és tageken belül: a és tagek között adhatjuk meg a.
Előadás másolata:

Stíluslapok (CSS) a webfejleszétben Nagy Gusztáv PHP Konferencia RoadShow Kecskemét

Mi az a CSS? A CSS jelentése Cascading Style Sheets, azaz egymásba ágyazott stíluslapok. A HTML oldalaink megjelenését befolyásoló nyelvről van szó, mely segítségével meghatározhatjuk, hogy hogyan (és hol) jelenjenek meg az egyes HTML elemek (paragrafusok, címsorok, stb.), pl. szín, méret, elhelyezkedés, margó.

Egymásba ágyazhatóság több stíluslapot, meghatározást is megadhatunk egyszerre egy stílus lehet több elemre is érvényes, amit egy másik stílussal felüldefiniálhatunk a stílusok öröklődnek az oldal hierarchiája szerint, ha például a gyökér elemre definiálunk egy stílust, akkor az többnyire az oldal összes elemére érvényes (a tulajdonságok alapértelmezésétől függően)

Document Object Model

Motiváció azaz miért is jó a CSS?

Miért CSS? Miért lesz egyszerűbb az életünk a CSS használatával? Szeretnénk, ha a címsoraink betűi nagyok és sötétvörösek lennének, míg a bekezdéseink betűi kisebbek és sötétzöldek. Ezt HTML formázással a következőképpen tudjuk megvalósítani:

Formázás HTML-ben

Miért rossz? minden egyes címsor (h1) és bekezdés (p) esetén meg kellett határoznunk a megjelenést (font), ráadásul ezáltal sokkal kevésbé lett áttekinthető a HTML forrásunk a betűk méretének meghatározására nincs más lehetőségünk (a szabvány szerint), csak az előre definiált (1-től 7- ig meghatározott) méretek közül kiválasztani a nekünk megfelelőt

Hasonló CSS-el

Miért jobb így? csak egyszer kell a formázást megtenni a kód sokkal átláthatóbb lesz a pontos méretet is meghatározhatjuk pixelben, vagy akár %-al, stb. ha utólag módosítanunk kell a megjelenést, egyből csak egy helyen kell ezt megtennünk, s mindenhol meg is változik az így elkészített dokumentum sokkal kisebb méretű is lesz, gyorsabban letöltődik (különösen, ha sok oldalon használjuk ugyanazt a stíluslapot)

Példa: stíluslap-váltás A következő két kép ugyanazt a HTML oldalt mutatja, egyetlen különbség a stíluslap váltása

Példa: stíluslap-váltás

Példa: stíluslap-váltás

www.csszengarden.com

CSS hozzákapcsolása a HTML-hez

Beágyazott stíluslap A stílusleírást a HTML oldal fejlécében kell elhelyezni, style elembe ágyazva. A fenti példában HTML megjegyzésbe is tettük (<!-- ... -->), ezzel azt érjük el, hogy az olyan böngészők, amik nem ismerik a stíluslapokat, ne jelenítsék meg a stílus definíciónkat. Az így meghatározott stílus az egész dokumentumra érvényes lesz.

Külső stíluslap A stíluslapunkat elhelyezhetjük egy külső állományban is, így lehetővé téve, hogy az több HTML állományra is érvényes legyen, s központilag szerkeszthetővé váljon (ne kelljen minden egyes HTML állományt megváltoztatnunk, ha a honlapunk ezentúl másképp jelenne meg). A külső stíluslapokra az oldal fejlécében tudunk hivatkozni, egy link vagy style elem segítségével.

Külső stíluslap példa A stíluslapot tartalmazó állományban csak a stíluslapjaink definícióját kell elhelyeznünk:

Importált stíluslap egy stílus meghatározáson belül egy másik, külső stílus meghatározásra hivatkozunk: külső stílus hivatkozásnak meg kell előznie minden más definíciót!

Elemhez rendelt stíluslap Ritkán van rá szükség, de akkor jól jön, hogy az egyes HTML elemekhez helyben is tudunk stílust meghatározni itt csak magát a megjelenést kellett leírnunk, nem kellett meghatározni, hogy mire vonatkozik: az így definiált stílus csak az adott elemre, illetve az adott elemen belül lesz érvényes.

Stílusok formátuma

Stílus-meghatározás Kiválasztó: azt határozza meg, hogy mely HTML elemekre vonatkozzon a definíció Tulajdonság: a megjelenést befolyásolja Pl: kiválasztó { tulajdonság } kiválasztó { tulajdonság } kiválasztó { tulajdonság }

Elem kiválasztása Legegyszerűbb a HTML elemek használata pl: Itt az első három szintű címsornak egyszerre határoztuk meg a színbeli megjelenését

Osztály alapú kiválasztás A HTML elemeket lehetőségünk van osztályokba sorolni. Ekkor az adott osztályba sorolni kívánt elemhez egy class tulajdonságot rendelünk hozzá, amelynek az értéke az osztálynevünk lesz:

Osztály alapú kiválasztás Legyen minden „fontos” osztályú tag megjelenítése piros: Megjegyzés: az egyes stílusdefiníciók felül tudják bírálni egymást

Kiválasztás keverése

Azonosító alapú kiválasztás hasonló az osztály alapú kiválasztáshoz, de azonosítóval csak egy elemet tudunk megjelölni.

Helyzetérzékeny kiválasztás a fában egy adott elem alatt levő elemhez rendelhetünk stílust, például megmondhatjuk, hogy a táblázatokon belül levő félkövér betűk sötétkékek legyenek, miközben a többinek nem fog megváltozni a színe:

Szülő-gyermek kiválasztás az elemeknek a (DOM) fában betöltött helye szerinti közvetlen szülő-gyermek kapcsolata esetén tudjuk megadni a stílus-meghatározását

Tulajdonság alapú kiválasztás egy adott paraméter megléte, vagy annak az értéke szerint is lehet kiválasztani:

Variációk Az eddigi kiválasztási módokat tetszés szerint variálhatjuk. Pl.

Betűk megjelenítése

Betűtípus az egész dokumentumra beállítjuk, hogy milyen betűkészlet legyen az alapértelmezett érdemes több, hasonló betűkészletet is felsorolni, illetve a lista végére egy általános betűkészletet is elhelyezni az adott családból

Súlyosság lehetőségek: lighter, normal, bold, bolder, illetve 100-tól 900-ig a számok 100-asával (egyre vastagabb betűkészletet választva)

Méret Megadási lehetőségek: pixelben (mint a példában) pontban (pt-t kell írni) százalékban, szövegesen (xx-small, x-small, small, medium, large, x-large, xx-large, smaller, larger)

Stílus lehetőségeink: normal, italic, oblique

Csoportos megadás Lehetőségünk van a fentieket egy paraméterként is átadni:

Szöveg paraméterek

Szöveg paraméterek h1 { color: black; } Fekete szín. Lehetőség van RGB megadásra is. h1 { letter-spacing: 10px; } A címsor betűi közötti távolságot növeltük meg 10 képponttal. Lehetőségünk van növelni és csökkenteni a távolságot. h1 { text-align: center; } Lehet: left, center, right és justify

Szöveg paraméterek p { text-decoration: none; } lehetséges értékek: none, underline, overline, line-through, blink p { text-indent: 40px; } bekezdések első sorának behúzása h1 { text-transform: uppercase; } Lehetséges értékek: none, capitalize, uppercase és lowercase

Szöveg paraméterek p { white-space: nowrap; } Szóközök, tabulátorok kezelését állíthatjuk a white-space attribútummal. A normal a sorvégeken tördeli a szöveget, a nowrap nem enged sortörést, míg a harmadik lehetséges érték, a pre megtartja egy az egyben a sortöréseket, szóközöket, tabulátorokat.

Szöveg paraméterek p { word-spacing: 10px; } szavak közötti távolság p { line-height: 20px; } sormagasságot állíthatjuk vele egy paragrafuson belül

Dobozok megjelenítése

Doboz modell Bármilyen téglalap alakú tartalom esetén. margó keret kitöltés magasság szélesség Bármilyen téglalap alakú tartalom esetén.

Háttér Vezérelhetjük a háttér színét, képet helyezhetünk el háttérként, s annak tulajdonságait (elhelyezkedését, ismétlődését, mozgását) állíthatjuk be.

Háttér background-color: white; értéke színkonstans vagy hexa érték lehet background-image: url(hatter.gif); background-position: top left; background-attachment: scroll; lehetséges érték: fixed és scroll background-repeat: repeat; lehetséges érték: repeat, repeat-x, repeat- y, no-repeat

Háttér A háttér paraméterek egy összevonó background paraméterrel:

Keretek border-width: 2px szélesség border-style: solid lehetséges értékek: none, hidden, dotted, dashed, solid, double, groove, ridge, inset, outset border-color:blue

Keretek Az előző példa egyetlen border tulajdonsággá összevonható:

Keretek Lehetőségünk van a keretek mind a négy oldalon külön-külön történő beállítására, akár összevonva is:

Margók margin: 0px 1px 2px 3px; fenti, jobb oldali, lenti és bal oldali margó szélesség margin: 10px 0px; függőleges és vízszintes irány margin: 0; azonos margó minden oldalon margin-left: 3px; a négy oldalt külön-külön is beállíthatjuk

Kitöltés az egyes elemeknek a kereten belüli helyfoglalását szabályozhatjuk Megadás pont úgy történik, mint a margó esetén. Pl: padding: 0px 1px 2px 3px;

Listák

Listák szerkezete külső elem: UL, OL belső elem: LI ul { list-style: square inside url(pont.gif) } list-style-image: url(pont.gif)

Listák szerkezete list-style-position: inside lehetséges értékek: inside, outside list-style-type: disc lehetséges értékek: none, disc, circle, square, decimal, decimal-leading-zero, lower-roman, upper-roman, lower-alpha, upper- alpha, lower-greek, lower-latin, upper- latin, hebrew, armenian, georgian,

Látszólagos kiválasztók

Linkek a { color: #0000FF; text-decoration: underline; } Minden linkre fog vonatkozni a:link { text-decoration: none; } még meg nem látogatott a:visited { font-style: italic; } már meglátogatott a:hover { font-style: bold; } ha a kurzort fölé visszük

Elemszerű kiválasztók kiválasztanunk egy-egy elem tartalmának csak bizonyos részeit, mintha azok külön-külön definiált elemek lennének p:first-letter {font-size: 300%;} első betű 3-szoros p:first-line { color: #000080; } első sor kék színű

Első gyermek kiválasztó body > p:first-child { font-weight: bold; } a body első bekezdését választja ki (ha nem p az első gyermek, akkor nem lesz hatása ennek a kiválasztónak!)

Elem előtt és után adott elem előtti és mögötti látszólagos részeket választjuk ki (fontos: nem az előtte levő elemeket, hanem az elem és az előtte levő elem közötti 0 hosszúságú részt) b:before { content: '<b>'; } b:after  { content: '</b>'; } ténylegesen megjeleníti a tagokat is

Megjelenítés

Láthatóság A böngésző megjelenítse-e visible: látható hidden: nem látható (a helye „üres” marad!) collapse táblázat sorát vagy oszlopát lehet elrejteni h1 { visibility: hidden; }

Megjelenítés a böngésző minden elemhez meghatároz egy alapértelmezett sémát de ez felülbírálható: h1 { display: run-in; }

Megjelenítés letiltása a dokumentumunkban jelen lesz, elérhető, használható, de fókuszt már felhasználó által nem kaphat (pl. JavaScriptből viszont igen) .hidden { display: none; } gyakori példa: faszerkezetű menüben a gyermekek eltüntetése JavaScripttel

Soron belüli megjelenítés példa: a form elemünk blokk típusú megjelenítését soron belülire szeretnénk változtatni form { display: inline; } másik példa: felsorolással (UL) adjuk meg a horizontális menüt

Blokkban történő megjel. téglalapot foglalnak el, és abban jelenítik meg tartalmukat pl. egy felsorolás elemeit blokként szeretnénk megjeleníteni ul, li { display: block; border: 1px solid #000000; }

www.digital-web.com

nagygusztav.hu

Befutó megjelenítés betolakodhatunk a következő elembe, amennyiben az blokként jelenik meg például egy címsor elemet az utána következő bekezdés elején tudunk megjeleníteni: h1 { display: run-in; }

Jelölőként való megjelenítés csak generált blokkban használhatjuk pl. a lista elemnél a jelölő megjelenéséhez hasonlóan fog megjelenni a generált tartalom: li:before { display: marker; content: "-"; width: 10px; }

A pozícionálás és kapcsolódó tulajdonságok

Pozícionálási séma azt határozhatjuk meg, hogy mihez képest helyezze el az elemet static (alapértelmezés) ott jelenik meg az elem, ahol éppen tartunk a dokumentumban

Pozícionálási séma relative esetén a static-hoz képest eltolhatjuk (top, left) #fejlec { position: relative; top: - 15px; left: 10px; } absolute esetén a méret is változtatható már (right, bottom, width, height) az elem kikerül a megjelenítés folyamából #lablec { position: absolute; bottom: 10px; right: 10px; }

Pozícionálási séma fixed hasonlít az absolute-hoz, de itt nem a dokumentumon, hanem a képernyőn belül pozícionálhatunk #cimke { position: fixed; bottom: 10px; right: 10px; } példa: keret emuláció (!)

Lebegtetés A képeket mindig bal szélhez igazítja: img { float: left; } a kép soron belüli elem, a szöveg nem tudja körbefutni enélkül

Dinamikus tartalmak

Külső objektumok a példa egy képet jelenít meg minden paragrafus előtt: p:before { content: url(/images/para-start.gif); }

www.designprog.net/ cikkolvas.php?id=208

Számlálók egy folyamatosan növekvő értéket fogunk beszúrni az adott elem elé. Például megszámozzuk a címeket: h1:before { content: counter(headermains); }

Kurzor beállítása adott elem felett lehetőségünk van befolyásolni az egérkurzor megjelenését lehetséges értékek: auto, crosshair, default, pointer, move, e-resize, text, … továbbá az url(xxx.gif) a { cursor: move; } .area { cursor: url(/images/eger.gif); }

Technikai eszközök

Internet Explorer Sajnos az Internet Explorer nem tartja magára nézve kötelezőnek a szabványokat Nem vesz figyelembe minden kiválasztót (kisebbik probléma) Némelyiket máshogy értelmezi (nagyobbik probléma) Akkor mit használjunk?

Netcsape, Mozilla, Firefox http://www.mozilla.org-ról letölthetők Maximálisan szabványkövető böngészők A Firefox-ot direkt webfejlesztőknek készítik Sok hasznos plugin létezik, pl: Web Developer Toolbar

Web Developer Toolbar View style information: az egérkurzornál levő tartalom „elérési útja” az állapotsorban

Web Developer Toolbar Display block size: minden blokk mérete pixelben

Web Developer Toolbar Display ID & class details

Jogos kérdés, kétely Szabad-e úgy fejleszteni, hogy a szörfözők 80-90%-a nem azt fogja látni eredményül, amit szeretnék Szerintem úgy érdemes, hogy először a szabványnak megfelelő legyen, majd kiegészíteni azzal a néhány dologgal, amit az Internet Explorer máshogy értelmez.

Az én megoldásom <link rel="StyleSheet" type="text/css" href="design/stilus.css"> <!--[if IE]> <link rel="StyleSheet" type="text/css" href="design/ie_stilus.css"> <![endif]-->

Az én megoldásom #balmenu { width:200px; margin-top: 20px; } .ballistablokk ul li a { padding: 0px 0px 2px 20px; margin: -5px 0px -15px 0px; } span.cikkdatum { margin-top: 0px; }

(Helyesség ellenőrzés) Validálás (Helyesség ellenőrzés)

On-line ellenőrzés http://validator.w3.org/ http://jigsaw.w3.org/css-validator/

TIDY http://www.w3.org/People/Raggett/tidy / HTML és CSS ellenőrzés Tulajdonképpen egy nyílt forrású függvénykönyvtár, bárki felhasználhatja

TIDY szolgáltatásai ellenőrzés: error, warning és access warning automatikus korrekció (pl. van egy PHP rendszerünk, aminek a kimenetét a TIDY-vel még korrigáljuk) HTML formázás (logikai felépítés vizuális jelzése a tabulálással) …

TIDY használható parancssori programként saját programba beépíthetjük (pl. egy HTML + CSS editort írunk) Mozilla, Firefox plugin azonnali ellenőrzés

TIDY plug-in

További Firefox plug-inek

addons.update.mozilla.org/ extensions/ Jelenleg 695 tölthető le JavaScript Debugger ColorZilla Link preview Adblock Download Manager Tweak ChatZilla

Google preview

Felhasznált irodalom http://w3c.org/Style/CSS/ http://css.lap.hu/ http://weblabor.hu/cikkek/cssalapjai1 http://htmlinfo.polyhistor.hu/css2ref/ cover.htm

néhány további kedvcsináló példa Végezetül néhány további kedvcsináló példa

weblabor.hu/ cikkek/dobozolas

weblabor.hu/ cikkek/kepvalasztopanel

e-lusion.com/design/menu/

www.hszk.bme.hu/~hj130/css/drop_shadow/