User Tools

Site Tools


tanszek:oktatas:web_technologia_alapjai:css

This is an old revision of the document!


CSS (Cascading Style Sheets)

Mi a CSS?

A CSS (Cascading Style Sheets) egy stílusok megadására alkalmas nyelv, amelyet weboldalak formázására használnak. Segítségével lehetőség van a HTML elemek megjelenését, elrendezését és formázását meghatározni.

Míg az HTML leírja a weboldal szerkezetét és tartalmát, a CSS lehetővé teszi a fejlesztők számára, hogy stílusokat alkalmazzanak, mint például színek, betűtípusok, térközök és elhelyezés, hogy vizuálisan vonzó és felhasználóbarát felületeket hozzanak létre.

Selectorok és deklarációk

A CSS szelectorokra és deklarációkra épül.

A szelektorok meghatározzák, hogy mely HTML elemeket célozzák meg a stílusok. Lehetnek egyszerűek, mint például egy elem kiválasztása a neve alapján (pl. a p szelektor minden bekezdést kiválaszt), de választhatunk HTML elemeket osztályok, azonosítók, és attribútumok alapján is.

A deklarációk meghatározzák azokat a stílus tulajdonságokat, amelyeket alkalmazni kell a kiválasztott elemekre. Egy deklaráció tulajdonságból (pl. color) és értékből (pl. blue) áll, kettősponttal elválasztva, és kapcsos zárójelek közé zárva. Például, a p { color: blue; } a szöveg színét kékre változtatja minden bekezdés esetén.

Nézzünk meg egy egyszerű példát:

<!DOCTYPE html>
<html>
<head>
  <title>Kék bekezdés</title>
  <style>
    p {
      color: blue;
    }
  </style>
</head>
<body>
  <p>Ez egy kék bekezdés.</p>
  <p>Ez is egy kék bekezdés.</p>
</body>
</html>

CSS stílusok megadása

Inline

Az inline CSS közvetlenül az egyes HTML-elemekre alkalmaz stílusokat a style attribútumon keresztül. Az elem nyitó tagjában van meghatározva, például egy <p> vagy <h1> tagben.

<p style="color: red; font-size: 16px;">Ez egy egyedi stílusú bekezdés, piros színnel és 16 pixel betűmérettel.</p>
<p>Ez a bekezdés az alapértelmezett formázást használja, nincs rá alkalmazva CSS.</p>

Az inline CSS hasznos lehet az oldalon belül csak egy adott elem módosítására anélkül, hogy a lap többi részére hatással lenne. Az inline CSS gyakran nem ideális megoldás, mivel ezek a stílusok nem használhatók könnyen újra az oldal más részein.

Beágyazott

Beágyazott CSS a <style> tagben található, a HTML-dokumentum <head> szekciójában. Ez a módszer lehetővé teszi, hogy több elemre alkalmazzunk azonos stílusokat az oldalon belül.

<head>
<style>
  h1 {
    color: blue;
  }
 
  .bold {  
    font-weight: bold;  
  }  
</style>  
</head>
<body>
  <h1>Kék címsor</h1>
  <p>Ez egy <span class="bold">példa</span> bekezdés.</p>
</body>

A beágyazott CSS hasznos lehet egyetlen oldal stílusának meghatározására, mivel az összes CSS-szabály egy helyen marad a dokumentumon belül. Kevésbé hatékony azonban, ha több oldallal dolgozunk, mivel a stílusokat HTML-dokumentumok között nem tudjuk újrafelhasználni.

Külső

A külső CSS egy külön .css fájlban van meghatározva, és a HTML-dokumentumhoz a <link> elemmel kapcsolható. Az így kezelt CSS fájlra akár több HTML-fájl is hivatkozhat.

<head>
  <link rel="stylesheet" type="text/css" href="styles.css">
</head>

Egy külső stíluslap a következőhöz hasonló szabálygyűjteményt tartalmazhat:

/* styles.css */
p { color: blue; line-height: 1.5; }
h1 { font: 32px Arial; }

A külső CSS ideális több lapból álló weboldalak számára, mert lehetővé teszi az egységes stílusok alkalmazását több dokumentumban. Továbbá javítja a betöltési időket azáltal, hogy a böngészők gyorsítótárazhatják a különálló CSS-stíluslapot.

Kommentek

A CSS-ben a kommentek arra szolgálnak, hogy magyarázatokat adjunk a kódhoz, vagy ideiglenesen letiltsunk kódrészleteket anélkül, hogy ez befolyásolná a weboldal stílusát. A böngésző nem jeleníti meg ezeket, és nem hatnak a lap elrendezésére vagy megjelenésére.

/* Formázási szabályok a bekezdésekhez */
p {
  color: black; /* A szöveg színének beállítása feketére */
  font-size: 16pt; /* Betűméret beállítása 16 pontra */
}

Elem, ID és class selectorok

A CSS-szelektorok szolgálnak a HTML dokumentumon belül elemek kiválasztására. Három gyakori típusa az elem, a class, és az ID szelektor, amelyek mindegyike eltérő célt szolgál.

Az elem szelektor egy adott HTML-elemet céloz meg az oldalon, egyszerűen az elem nevével van meghatározva, például p, h1 vagy div. Az alábbi példában az összes <p> elem 16px betűmérettel és fekete szövegszínnel jelenik meg:

<!DOCTYPE html>
<html>
<head>
    <style>
        p {
            font-size: 16px;
            color: black;
        }
    </style>
</head>
<body>
    <p>Ez a bekezdés elem szelektorral kerül formázásra.</p>
    <p>Erre a bekezdésre ugyanazok a stílusok érvényesek.</p>
</body>
</html>

A class szelektor egy vagy több elemet céloz meg, melyek ugyanazzal a class attribútummal rendelkeznek. Az osztályszelektorokat egy pont és az osztály neve határozza meg. Az alábbi példában minden <p> és

elem, amely a highlight osztályt tartalmazza, sárga háttérrel és félkövér betűstílussal jelenik meg. Mivel az osztályok több elemhez is hozzárendelhetők, a class szelektorok nagyobb rugalmasságot biztosítanak a stílusok alkalmazásában. <code XML> <!DOCTYPE html> <html> <head> <style> .highlight { background-color: yellow; font-weight: bold; } </style> </head> <body> <p class=“highlight”>Ez a bekezdés class szelektorral kerül formázásra.</p> <p>Ez nem egy kiemelt bekezdés.</p>

Ezen az elem a legelső bekezdéshez hasonlóan van kiemelve.

</body> </html> </code> Az ID szelektor egyetlen HTML-elemet céloz meg, annak id attribútuma alapján. Az ID szelektorokat a # szimbólum és az azonosító neve jelöli. Az alábbi példában kizárólag a <h1> elem (amelynek id=“main-header” van beállítva) kapja meg a megadott stílust, míg a többi elem változatlan marad. <code XML> <!DOCTYPE html> <html> <head> <style> #main-header { font-size: 24px; text-align: center; } </style> </head> <body> <h1 id=“main-header”>Ez a címsor ID szelektorral kerül formázásra.</h1> <p>Ezt a bekezdést nem érinti az ID szelektor.</p> </body> </html> </code> Összegzésként az elem szelektorok széles körű formázásra használhatók, az ID szelektorok egyedi elemek célzott formázására szolgálnak, míg a class szelektorok lehetővé teszik több elem egyidejű formázását, magas szintű rugalmasságot biztosítva. Ezen szelektorok megértése és megfelelő kombinálása kulcsfontosságú a hatékony és könnyen karbantartható CSS írásához. Az elemszelektorokat az elem neve jelöli, az osztályszelektorokat egy . és az osztály neve, míg az ID szelektorokat egy # és az azonosító neve: ^ Szelektor típusa ^ HTML példa ^ CSS szelektor | | Elemszelektor | <p>Test</p> | p | | Osztályszelektor | <p class=“highlight”>Test</p> | .highlight | | Azonosítószelektor| <p id=“main-text”>Test</p> | #main-text | ==== Kaszkádolás ==== Az egymás után, azonos selector-ral megadott szabályok felülírják egymást. <code xml> <head> <style> p { color: red; } p { color: green; } </style> </head> <body> <p>Ennek a bekezdésnek zöld színe lesz.</p> </body> </code> ==== Hierarchia ==== Egyes szabályok képesek egymást felülírni. A hierarchiában magasabb szinten álló szabály fog érvényesülni az elemre. ![CSS specificity](imgs/css_specificity.png) <code xml> <head> <style> p { font-weight: bold; color: red; } #green-text { color: green; } </style> </head> <body> <p id=“green-text”>Ez egy félkövér, zöld színű bekezdés.</p> </body> </code> ==== span és div elemek szerepe ==== * span: Inline elem, mely a szöveg egy részét jelöli ki. * div: Blokk elem, mely több tartalmat rendez egy blokkba. <code xml> <p>Ez egy piros szöveg.</p>

  <p>Ez egy félkövér szöveg.</p>
  <p>Ahogy ez is.</p>
  <p>És ez is.</p>

</code> ==== Háttér formázása ==== A background tulajdonsággal lehet a háttér stílusát meghatározni. <code css> body { background-color: #f0f0f0; } #header { background-image: url('header.jpg'); } </code> ==== Margin, padding és border ==== A margin a külső tér, míg a padding a belső tér a HTML elem körül. A border a HTML elem körvonala. Ezt a megoldást „box modellnek” is nevezzük. ![CSS box model](imgs/css_box_model.drawio.png) <code css> div { margin: 10px; padding: 20px; border: 1px solid black; border-radius: 5px; } </code> ==== Szélesség és magasság beállítása ==== A width és height'' tulajdonságokkal lehet a méreteket meghatározni.

img {
    width: 100px;
    height: 100px;
}

Szövegformázás

A szövegformázásra számos tulajdonságot lehet használni.

p {
    font-family: Arial;
    font-size: 16px;
    font-weight: bold;
    font-style: italic;
 
    text-decoration: underline;
    text-align: justify;
}
tanszek/oktatas/web_technologia_alapjai/css.1739976094.txt.gz · Last modified: 2025/02/19 14:41 by kissa