A kódszerkesztőnk — Visual Studio Code
Mielőtt egyetlen sort írunk, szükségünk van egy jó eszközre. A mi választásunk a VS Code — ingyenes, minden programnyelvet ismer, és a világ egyik legelterjedtebb kódszerkesztője.
1Mi az a kódszerkesztő és miért kell?
Technikailag a Windows Notepad-ban is lehet HTML-t írni — de az olyan, mint kalapáccsal sebészeti műtétet végezni. Elvégezhető, de sokkal nehezebb és több a hiba lehetősége. Egy kódszerkesztő segít megelőzni a hibákat, gyorsabban dolgozni, és egyből látni mi micsoda a kódban.
Szintaxis kiemelés — a HTML tagek pirosak, a JS kulcsszavak lilák, a szövegek zöldek. Egy pillantásra látod a struktúrát.
Automatikus kiegészítés — elkezded írni hogy <div és ajánlja a </div> lezárást.
Hibakiemelés — piros aláhúzással jelzi ha valamit elírtál, még mielőtt megpróbálnád futtatni.
Keresés és csere — az egész projektben egyszerre megtalál és átír minden szót.
2Miért a VS Code — összehasonlítás
| Szerkesztő | Ár | Nyelvek | Bővíthetőség | Tanulási görbe |
|---|---|---|---|---|
| VS Code ✓ | Ingyenes | 100+ | Több ezer bővítmény | Közepes — 1-2 nap |
| Notepad++ | Ingyenes | Sok | Kevés | Nagyon könnyű |
| Sublime Text | ~80 USD | Sok | Közepes | Könnyű |
| WebStorm | ~70 USD/év | Web-fókusz | Beépített | Nehezebb |
| Notepad (Windows) | Ingyenes | Nincs kiemelés | Nincs | Azonnal |
A VS Code a legjobb egyensúly: teljesen ingyenes, de profi szintű. Ugyanezt használják a Google, Microsoft, Netflix fejlesztői is. Ha megtanulod most, ez a tudás évtizedekig hasznos marad.
3Telepítés — lépésről lépésre
https://code.visualstudio.com
Windows, Mac és Linux verziók mind elérhetők ugyanitt. Válaszd a te operációs rendszerednek megfelelőt.
1. Nyisd meg: https://code.visualstudio.com 2. Kattints a nagy kék "Download for Windows" gombra 3. Futtasd a letöltött VSCodeSetup-x64-*.exe fájlt 4. Telepítés során hagyd bepipálva ezeket: ✓ "Add to PATH" ← fontos! ✓ "Register Code as editor for supported file types" ✓ "Add 'Open with Code' action to Windows Explorer" 5. Telepítés után indítsd el a VS Code-ot 6. Megnyílik az üdvözlőképernyő — kész vagy!
Első indítás — mit fogsz látni
Az első indításkor egy üdvözlőképernyő jelenik meg. Ezt bezárhatod. A legfontosabb részek:
Bal oldalt — a fájljaid és mappáid fája. Innen nyitod meg a HTML fájlokat.
Itt írod a kódot. Egyszerre több fájl is nyitva lehet — fülek formájában.
Beépített parancssor. Egyelőre nem kell, de hasznos lesz később.
Bővítmények telepítési helye. Ide kell menni a Live Server-hez.
4Kötelező bővítmény: Live Server
A Live Server a legfontosabb bővítmény az oktatáshoz. Nélküle minden mentés után F5-tel kell frissíteni a böngészőt — vele automatikusan frissül amint mentesz.
1. VS Code-ban nyomj Ctrl+Shift+X (Extensions panel) 2. A keresőbe írd be: "Live Server" 3. Keresd a "Live Server" bővítményt — szerzője: Ritwick Dey 4. Kattints az "Install" gombra 5. Telepítés után megjelenik az állapotsorban: "Go Live" ← erre kell kattintani a kiszolgálás indításához Használat: - Nyiss meg egy HTML fájlt - Kattints a "Go Live" gombra (jobb alsó sarok) - Automatikusan megnyílik a böngésző: http://127.0.0.1:5500 - Minden mentésnél (Ctrl+S) azonnal frissül!
Prettier — automatikusan szép formátumba rendezi a kódot mentéskor
Auto Rename Tag — ha átírod a nyitó taget, a zárót is átírja automatikusan
Color Highlight — a #ff0000 kód mellett megmutatja a tényleges színt
5Leghasznosabb billentyűparancsok
| Parancs | Mit csinál | Mikor hasznos |
|---|---|---|
Ctrl + S | Mentés | Minden módosítás után — Live Server figyeli |
Ctrl + Z | Visszavonás | Ha valamit elrontottál |
Ctrl + / | Komment ki/be | Sor kikommentezése gyorsan |
Alt + ↑↓ | Sor mozgatása | Kód átrendezése másolás nélkül |
Ctrl + D | Következő egyező kijelölése | Több helyen egyszerre szerkesztés |
Ctrl + F | Keresés a fájlban | Megtalálni egy tag-et vagy változót |
Ctrl + Shift + F | Keresés minden fájlban | Projektszintű keresés |
F12 | Definícióra ugrás | Ahol egy függvény vagy változó definiálva van |
Ctrl + ` | Terminal megnyitása | Parancssor közvetlenül VS Code-ban |
Shift + Alt + F | Kód formázása | Rendetlen kód azonnal rendbe rakása |
6A Castle Siege megnyitása VS Code-ban
Most próbáljuk ki a valóságban! Nyisd meg a castle_siege.html fájlt VS Code-ban és nézd meg hogyan jelenik meg a kód.
1. VS Code-ban: File → Open Folder (nem File → Open File!) → Válaszd ki azt a mappát ahol a játékok vannak → Bal oldalt megjelenik az összes fájl 2. Kattints a "castle_siege.html"-re a bal oldali panelen → Megnyílik a szerkesztőben → Látod a szintaxis kiemelést? Piros tagek, sárga attribútumok? 3. Kattints a "Go Live" gombra (jobb alsó sarokban) → Megnyílik a böngészőben és játszható! 4. Próba: keresd meg a <title> taget (Ctrl+F → "title") → Változtasd meg a szövegét → Mentés (Ctrl+S) → nézd meg a böngésző fülét!
A Castle Siege közel 900 sor kód. Ez elsőre ijesztőnek tűnhet — de a kurzus végére minden egyes sort érteni fogsz. Az első leckékben csak a legelső 15 sort nézzük meg.
Telepítsd a VS Code-ot és végezd el ezeket a feladatokat:
- Telepítsd a VS Code-ot a code.visualstudio.com oldalról
- Telepítsd a Live Server bővítményt (Ritwick Dey)
- Nyisd meg a játékok mappáját (File → Open Folder)
- Nyisd meg a castle_siege.html fájlt — látod a szintaxis kiemelést?
- Indítsd el Live Server-rel (Go Live gomb) — fut a játék a böngészőben?
- Keresd meg a <title> taget (Ctrl+F), írd át a nevet, mentsd (Ctrl+S) — változott a fül felirata?
🧠 Melyik állítás igaz a VS Code-ról?
A HTML dokumentum felépítése
Megismerjük a weboldal "csontvázát" — azt a keretet, amelybe minden más kerül. Megnézzük hogyan néz ki ugyanez a Castle Siege játékban.
1Mi az a HTML?
A HTML (HyperText Markup Language) nem programozási nyelv — hanem egy leírónyelv. Megmondjuk vele, hogy mi van a weboldalon, és mi micsoda. Nem az a dolgunk, hogy a gépnek utasításokat adjunk, hanem hogy struktúrát adjunk a tartalomnak.
A HTML olyan, mint egy épület alaprajza. Megmutatja hol van az ajtó, hol a ablak, hol a fal — de azt nem mondja meg, milyen színűek legyenek. A színeket CSS mondja meg, a mozgást (ki nyitja ki az ajtót) JavaScript.
A HTML tagekből (jelölőkből) áll. Minden tagnek van egy nyitó és egy záró változata:
<h1>Ez egy főcím</h1> <!-- ↑ nyitó tag ↑ záró tag (perjellel kezdődik) --> <p>Ez egy bekezdés.</p> <!-- Vannak önzáró tagek is (nincs tartalmuk): --> <br> <!-- sortörés --> <img src="kep.jpg"> <!-- kép -->
2Az alap dokumentumszerkezet
Minden HTML fájlnak ugyanígy kell kezdődnie. Ez nem opcionális — a böngésző ezt várja:
<!DOCTYPE html> <!-- 1. Ez HTML5 dokumentum --> <html lang="hu"> <!-- 2. Az oldal nyelve --> <head> <!-- 3. Fejléc (nem látható) --> <meta charset="UTF-8"> <!-- ékezetek működnek --> <meta name="viewport" content="width=device-width"> <!-- mobilos nézet --> <title>Oldal neve</title> <!-- böngésző füle --> <style> /* CSS ide kerül */ </style> </head> <body> <!-- 4. Törzs (ez látható) --> <h1>Helló Világ!</h1> <script> // JavaScript ide kerül </script> </body> </html>
Pontosan ezt látjuk a Castle Siege-ben
Nyisd meg a castle_siege.html fájlt szövegszerkesztőben — az első 10 sora pontosan ez a szerkezet, csak a title és a tartalom más:
<!DOCTYPE html> <html lang="hu"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Castle Siege – 50 Pálya</title> <style> /* ... itt van az összes stílus ... */ </style> </head> <body> <canvas id="c"></canvas> <!-- a játék vászna --> <div id="hud">...</div> <!-- sebességváltó gombok --> <script> // ... itt van az összes JavaScript ... </script> </body> </html>
A Castle Siege-ben a <body>-ban csak 3 dolog van: egy <canvas>, egy <div>, és egy <script>. A játék 99%-a a scriptben van — de a HTML keret mindig ugyanaz.
3A négy fő elem magyarázata
| Elem | Mit csinál | Hol látod a játékban |
|---|---|---|
<!DOCTYPE html> |
Megmondja a böngészőnek hogy ez HTML5 — kötelező első sor | Castle Siege, Froggy Rush, Teknős Verseny — mindenütt az első sor |
<html lang="hu"> |
Az egész dokumentum gyökere, a lang attribútum a képernyőolvasóknak és keresőknek szól |
Minden játékunkban lang="hu" van, mert magyarul írtuk |
<head> |
Meta-adatok, cím, stílusok — a felhasználó NEM látja közvetlenül | A Castle Siege <head>-jében van az összes CSS stílus (300+ sor) |
<body> |
A látható tartalom — ami a böngészőben megjelenik | A Froggy Rush body-jában van a canvas, a D-pad gombok, a modal ablak |
4Megjegyzések a kódban
A megjegyzések (kommentek) csak a kód olvasójának szólnak — a böngésző figyelmen kívül hagyja őket. Nagyon fontosak, hogy később is értsd a saját kódodat.
<!-- Ez egy egysoros HTML megjegyzés --> <!-- Ez egy többsoros megjegyzés --> <canvas id="c"></canvas> <!-- a játék vászna, JavaScript kezeli -->
Hozd létre az első saját HTML fájlodat! Nyiss meg egy szövegszerkesztőt, hozz létre egy sajat.html nevű fájlt, és írd bele az alap szerkezetet.
- Szerepeljen benne a helyes DOCTYPE, html, head, body szerkezet
- A title legyen "Az én első oldalám"
- A body-ban írj egy h1 tagbe a nevedet
- Adj hozzá egy megjegyzést ami elmagyarázza mit csinál a h1
- Mentés után dupla kattintással nyisd meg böngészőben — megjelenik a neved?
🧠 Gyors ellenőrzés — melyik állítás igaz?
Szöveg, címsorok, listák
Megtanuljuk hogyan jelenítünk meg szöveget — és hogyan néz ez ki a játékaink kezelőfelületén.
1Címsorok — h1-től h6-ig
A HTML 6 szintű címsort ismer. Az <h1> a legfontosabb (legnagyobb), a <h6> a legkisebb. Egy oldalon csak egy <h1> legyen!
<h1>🐸 Froggy Rush!</h1> <!-- legnagyobb --> <h2>Jelenlegi szint</h2> <h3>Statisztikák</h3> <h4>Kontrollok</h4> <!-- ritkán használt --> <h5>Lábjegyzet</h5> <!-- még ritkábban --> <h6>Jogi szöveg</h6> <!-- legkisebb -->
A Froggy Rush oldalán: <h1>🐸 FROGGY RUSH!</h1> — pontosan ezt látod a játék felett. A böngésző automatikusan nagy és félkövér betűvel jeleníti meg.
Bekezdések és szöveges formázás
<p>Ez egy bekezdés. Több mondatot is tartalmazhat.</p> <p>Ez <strong>félkövér</strong> szöveg — fontos kiemeléshez.</p> <p>Ez <em>dőlt</em> szöveg — hangsúlyozáshoz.</p> <br> <!-- sortörés (önzáró tag, nincs </br>) --> <hr> <!-- vízszintes elválasztó vonal --> <code>Math.floor(Math.random() * 10)</code> <!-- kódrészlet -->
Listák
<!-- Felsorolás (unordered list) — pontokkal --> <ul> <li>Froggy Rush</li> <li>Teknős Verseny</li> <li>Castle Siege</li> </ul> <!-- Sorszámozott lista (ordered list) — számokkal --> <ol> <li>Nyisd meg böngészőben</li> <li>Irányíts nyilakkal</li> <li>Gyűjtsd a tojásokat</li> </ol>
<ul> — ha a sorrend nem számít (pl. játékszabályok felsorolása)
<ol> — ha a sorrend fontos (pl. lépések sorrendben)
Bővítsd az előző fájlodat szöveges tartalommal!
- Adj hozzá egy h2-es alcímet "Kedvenc játékaim" szöveggel
- Alatta egy ul listát a három játékkal
- Egy bekezdésben írj röviden miért szereted a játékokat — kiemelj egy szót strong-gal
- Adj hozzá egy ol listát: hogyan kell elindítani a Froggy Rush-t (3 lépés)
🧠 Melyik lista-elem helyes szintaxissal?
Linkek és képek
A web lényege a hivatkozás. Megtanuljuk hogyan kötjük össze az oldalakat — és hogyan mutatunk képeket. A játékportálunk linkjei mind ezzel készülnek.
1Linkek — <a> tag
<!-- Külső link — másik weboldalra --> <a href="https://netlify.com">Netlify oldal</a> <!-- Belső link — saját fájlra --> <a href="castle_siege.html">Castle Siege játék</a> <!-- Új lapon nyílik meg --> <a href="froggy_rush.html" target="_blank">Froggy Rush</a> <!-- Ugyanazon az oldalon belül (horgony) --> <a href="#l2">Ugrás a 2. leckéhez</a> <!-- ... majd az oldalon valahol: --> <h2 id="l2">2. Lecke</h2>
Képek — <img> tag
<!-- Alapkép --> <img src="beka.png" alt="Egy zöld béka"> <!-- Mérettel --> <img src="teknos.png" alt="Teknős karakter" width="200" height="150"> <!-- Kép mint link --> <a href="turtle_race.html"> <img src="preview.png" alt="Teknős Verseny"> </a>
Az alt szöveg jelenik meg ha a kép nem tölt be — és a vak felhasználók képernyőolvasói ezt olvassák fel. Mindig adj értelmes alt szöveget.
Készítsd el a saját játékportálod alapját! Egy HTML fájlban:
- h1 cím: "Játékaim"
- Három link a három játékra (castle_siege.html, froggy_rush.html, turtle_race.html)
- Minden link target="_blank" legyen (új lapon nyíljon)
- Hozz létre egy "kapcsolat" horgonyt az oldal alján, és linkelj rá az oldal tetejéről
🧠 Melyik attribútum nyitja meg a linket új böngésző lapon?
div, span, id és class
A HTML "dobozai" — ezekkel szervezzük csoportokba az elemeket. A Castle Siege és Froggy Rush paneljeinek minden sora ezen alapszik.
1A div — blokk szintű konténer
A <div> (division) egy láthatatlan doboz, ami összekapcsol elemeket. Önmagában semmit nem csinál — de CSS-sel és JavaScripttel együtt a webfejlesztés egyik legfontosabb eszköze.
<!-- Egy panel a sebességváltó gomboknak --> <div id="hud"> <span>Sebesség:</span> <!-- Minden gomb egy button elem a divin belül --> <button class="sb on" id="s0">🐌 Gyerek</button> <button class="sb" id="s1">🐢 Lassú</button> <button class="sb" id="s2">⚔️ Normal</button> </div>
id vs class — miben különböznek?
| Tulajdonság | id | class |
|---|---|---|
| Egyediség | Oldalanként egyszer szerepelhet | Több elemnél is használható |
| Szintaxis CSS-ben | #hud { ... } | .sb { ... } |
| Szintaxis JS-ben | getElementById('hud') | getElementsByClassName('sb') |
| Mikor használd | Egyedi elem azonosításához (pl. canvas, modal) | Újrafelhasználható stílushoz (pl. gombok) |
Az id="hud" egyedi — az egész oldalon csak egy HUD van.
A class="sb" (speed button) viszont 4 gombon is rajta van — mind ugyanolyan stílusú.
A span — sor szintű konténer
<!-- div: új sort kezd (blokk elem) --> <div>Ez egy blokk — teljes sort foglal el.</div> <div>Ez a következő blokkra kerül.</div> <!-- span: nem kezd új sort (inline elem) --> <p>A pontszám: <span id="ui-score">0</span> pont.</p> <!-- A span csak a "0"-t veszi körül, a bekezdés folyamatos marad --> <!-- A Froggy Rush-ban is így mutatjuk a pontot: --> <div class="pbox"> <div class="plabel">Pont</div> <div class="pval" id="ui-score">0</div> </div>
Készítsd el a játékportálod panel-struktúráját div-ekkel!
- Hozz létre egy id="fejlec" divt a cím és navigáció számára
- Hozz létre egy id="jatekok" divt, benne 3 darab class="jatek-kártya" divvel
- Minden kártyában legyen: h3 (játék neve), p (rövid leírás), a (link a játékra)
- Hozz létre egy id="lablec" divt az oldal alján
🧠 Mi a különbség az id és a class között?
Gombok és input elemek
A Castle Siege mentési rendszerének, a sebességváltóknak és a modal ablaknak is van HTML inputja. Most megértjük ezeket.
1Gombok és szövegmezők
<!-- A mentési modal ablak --> <div id="modal-bg"> <div id="modal"> <!-- Szövegbeviteli mező --> <input id="save-name" maxlength="12" placeholder="Írd be a neved..."> <!-- Gombok --> <button class="mb" onclick="doSave()">💾 Mentés</button> <button class="mb" onclick="closeModal()">✕ Mégse</button> </div> </div>
Kattintható gomb. Az onclick attribútumban JavaScript futtatható.
Egysoros szövegbevitel. A mentési rendszer így kéri a nevet.
Csak számot fogad el. Hasznos pálya- vagy pontszám bevitelhez.
Jelölőnégyzet. Beállításokhoz, opciókhoz.
Halvány segédszöveg az üres mezőben — eltűnik gépeléskor.
Maximális karakterszám a beviteli mezőben (Castle Siege: 12).
Adj hozzá egy "Játékosregisztráció" szekciót a portálodhoz!
- Név mező (input, maxlength=15, placeholder="A neved")
- Kedvenc játék legördülő (select + 3 option)
- "Regisztrálás" gomb (button, onclick=alert('Szia!'))
- A gombok kapjanak class attribútumot a stílusozáshoz
🧠 Melyik input típus fogad el csak számokat?
CSS — Szín, betűtípus, méret
A CSS adja meg a játékaink vizuális megjelenését. Az első CSS leckében megtanuljuk a színeket, betűtípusokat és méreteket — a Castle Siege sötét témáján keresztül.
7Lecke — Szín, betűtípus, méret
/* CSS változók — az egész játék színpalettája egy helyen */ :root { --bg: #0d0a05; /* sötét háttér */ --player: #00d4ff; /* kék — játékos szín */ --ai: #ff3d6e; /* piros — AI szín */ --gold: #FFD700; /* arany — pontszám szín */ } /* Az egész oldal alap stílusa */ body { background: var(--bg); /* változó használata */ color: #c4a870; /* szöveg színe */ font-family: Georgia, serif; /* betűtípus */ font-size: 15px; /* betűméret */ } /* Gombok stílusa */ .sb { background: #1a1208; border: 1px solid #5a3a10; /* vastagság | stílus | szín */ color: #c4a870; border-radius: 4px; /* lekerekített sarok */ cursor: pointer; /* kéz kurzor hover-re */ } .sb.on { /* aktív gomb stílusa */ background: #3a2010; border-color: #FFD700; color: #FFD700; }
A :root-ban deklarált változókkal (--nev: ertek) az egész fájl bármely részén használhatjuk ugyanazt a színt. Ha változtatni akarod, elég egy helyen módosítani — ez a professzionális megközelítés.
Stílusozd meg a játékportál oldaladat CSS-sel:
- Adj sötét hátteret a body-nak (
background: #1a1a2a) - Változtasd meg a szöveg színét világosra (
color: #c4d0e0) - Állíts be Google Fonts betűtípust (Fredoka One vagy Nunito)
- A :root-ban definiálj 3 CSS változót: --bg, --text, --highlight
- Használd ezeket a változókat a stílusokban
🧠 Hogyan kell CSS változót HASZNÁLNI (nem definiálni)?
CSS — Box model (dobozmodell)
Miért nem ott van valami, ahol vártad? A box model magyarázza meg. Minden HTML elem egy doboz — a mérete a tartalom, padding, border és margin összege.
8Lecke — Box model (dobozmodell)
.jatek-kartya { width: 300px; /* tartalom szélessége */ padding: 20px; /* belső margó (tartalom körül) */ margin: 10px; /* külső margó (elem körül) */ border: 2px solid #444; /* keret */ /* Valós szélesség = width + padding*2 + border*2 = 300 + 40 + 4 = 344px (hacsak box-sizing: border-box nincs beállítva) */ } /* Modern megközelítés — a padding és border beleszámít a width-be */ * { box-sizing: border-box; /* minden játékunkban ott van! */ }
Box model kísérletezés — nyisd meg a böngésző DevTools-t (F12 → Elements):
- Adj a játékkártyáknak
padding: 20pxértéket — mit tapasztalsz? - Adj
border: 3px solid #4d9fffkeretet egy kártyának - Add a * { box-sizing: border-box } szabályt — változott valami?
- F12-vel nézd meg a "Box Model" diagramot az Elements panelen — látod a margin/padding/border rétegeket?
🧠 Mit csinál a box-sizing: border-box?
CSS — Flexbox elrendezés
A Flexbox a modern webfejlesztés elrendezési rendszere. A játékaink HUD paneljeinek, gombjainak sorba rendezése mind ezzel készül.
9Lecke — Flexbox
/* A sebességgombok sorba rendezése */ #hud { display: flex; /* flexbox bekapcsolása */ align-items: center; /* függőlegesen középre */ gap: 10px; /* elemek közötti rés */ flex-wrap: wrap; /* kis képernyőn tördelés */ } /* A Froggy Rush oldal elrendezése */ #layout { display: flex; gap: 16px; justify-content: center; /* vízszintesen középre */ } /* Az oldalpanel szélességének rögzítése */ #panel { width: 160px; flex-shrink: 0; /* ne zsugorodjon össze */ }
Rendezd Flexboxszal a játékportál kártyáit:
- A #jatekok div-nek adj
display: flexstílust - Adj
gap: 20pxrést a kártyák közé - Középre igazítás:
justify-content: center - Próbáld ki a
flex-direction: columnértéket — mi változik? - Állítsd vissza
row-ra és adjflex-wrap: wrapértéket
🧠 Melyik CSS tulajdonság rendezi a flex elemeket középre vízszintesen?
CSS — Reszponzív design
Hogyan néz ki a játék mobilon? A @media szabályok segítségével a játékaink telefonon és tableten is tökéletesen működnek.
10Lecke — Reszponzív design
/* Asztali nézet: két oszlop egymás mellett */ #layout { display: flex; flex-direction: row; /* vízszintes */ } /* Ha a képernyő kisebb mint 768px (tablet/telefon): */ @media (max-width: 768px) { #layout { flex-direction: column; /* egymás alá kerül */ } #panel { width: 100%; /* teljes szélességű */ } } /* Ha az eszköz érintős (telefon/tablet) — D-pad megjelenik */ @media (pointer: coarse) { #dpad { display: flex; /* csak érintős eszközön látható */ } }
Tedd mobilbaráttá a játékportált @media szabályokkal:
- Adj @media (max-width: 768px) blokkot a CSS-be
- Mobilon a kártyák kerüljenek egymás alá:
flex-direction: column - Mobilon a kártyák legyenek teljes szélességűek:
width: 100% - Tesztelj Chrome DevTools-szal: F12 → telefon ikon — látod a mobilos nézetet?
🧠 Melyik @media feltétel aktiválódik ha a képernyő kisebb mint 768px?
🏆 Projektzáró — Játékportál oldal
Az 1. Fázis lezáró projektje. Most már tudod az összes HTML és CSS alapot — ideje összerakni egy valódi, stílusos játékportál oldalt.
11Lecke — 🏆 Projektzáró: Játékportál oldal
Most már tudod az összes szükséges HTML és CSS alapot. Ideje összerakni egy valódi, stílusos játékportál oldalt, ahol a három játékod linkként szerepel — pontosan úgy, mint egy igazi weboldal.
Követelmények
<!DOCTYPE html> <html lang="hu"> <head> <!-- charset, viewport, title --> <!-- CSS: sötét téma, flex elrendezés, kártyák stílusa --> <!-- @media mobilos átméretezés --> </head> <body> <div id="fejlec"> <h1>🎮 Játékaim</h1> <p>Három böngészős játék, amit magam készítettem</p> </div> <div id="jatekok"> <!-- 3 darab kártya, mindegyikben: --> <div class="kartya"> <h2>🏰 Castle Siege</h2> <p>Tower defense játék 50 pályával</p> <a href="castle_siege.html" target="_blank"> <button class="jatszas-gomb">▶ Játék indítása</button> </a> </div> <!-- ... további 2 kártya ... --> </div> <div id="lablec"> <p>Készítette: <strong>[A te neved]</strong></p> </div> </body> </html>
- Helyes HTML5 dokumentumszerkezet (DOCTYPE, html, head, body)
- Ékezetes szövegek helyesen jelennek meg (charset UTF-8)
- Mobilon is olvasható (@media és viewport)
- Sötét háttér, olvasható szöveg (CSS color + background)
- 3 játékkártya flex elrendezésben egymás mellett (asztali)
- Mobilon egymás alá kerülnek a kártyák (@media)
- Minden kártyán van link a játékra (target="_blank")
- A gombok hover-re megváltoznak (:hover CSS)
- A fejléc és lábléc egyértelműen elkülönül
- A kód rendezett és kommentelt