Egyszerű To-Do Lista Készítése: HTML, CSS és JavaScript Kóddal

A to-do lista egy alapvető projekt, amely segít elsajátítani a front-end fejlesztés alapjait. Ebben a cikkben bemutatjuk, hogyan készíthetsz egy egyszerű és funkcionális to-do listát HTML, CSS és JavaScript használatával. Az eredmény egy reszponzív, modern megjelenésű alkalmazás lesz, amelyen új feladatokat adhatsz hozzá, kipipálhatod azokat, és törölheted is őket.

1. lépés: Alap HTML Struktúra

Kezdjük az alap HTML struktúrával. Hozzuk létre az index.html file-t. Ez tartalmaz egy input mezőt a feladatok beviteléhez, egy „Hozzáadás” gombot, valamint egy listaelemet, amely a feladatokat fogja tárolni.

<!DOCTYPE html> <html lang="hu"> <head>     <meta charset="UTF-8">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>To-Do Lista</title>     <link rel="stylesheet" href="css/style.css"> </head> <body>     <div class="todo-container">         <h1>To-Do Lista</h1>         <div class="input-container">             <input type="text" id="todo-input" placeholder="Új feladat...">             <button id="add-button">Hozzáadás</button>         </div>         <ul id="todo-list"></ul>     </div>     <script src="js/script.js"></script> </body> </html>

2. lépés: Alap CSS Stílusok

A stílusokkal modern, tiszta kinézetet érhetünk el. Hozzuk létre a style.css fájlt az alábbi tartalommal. Hozzuk létre a css/style.css

/* Alap stílusok */ body {     font-family: Arial, sans-serif;     margin: 0;     padding: 0;     display: flex;     justify-content: center;     align-items: center;     height: 100vh;     background-color: #f4f4f4; }  .todo-container {     background: white;     padding: 20px;     border-radius: 8px;     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);     width: 100%;     max-width: 400px;     text-align: center; }  h1 {     margin-bottom: 20px;     color: #333; }  .input-container {     display: flex;     gap: 10px;     margin-bottom: 20px; }  input[type="text"] {     flex: 1;     padding: 10px;     border: 1px solid #ddd;     border-radius: 4px;     font-size: 16px; }  button {     padding: 10px 20px;     border: none;     background-color: #007BFF;     color: white;     font-size: 16px;     border-radius: 4px;     cursor: pointer; }  button:hover {     background-color: #0056b3; }  ul {     list-style-type: none;     padding: 0; }  li {     padding: 10px;     background: #f9f9f9;     margin: 5px 0;     border-radius: 4px;     display: flex;     justify-content: space-between;     align-items: center; }  li.completed {     text-decoration: line-through;     color: #888; }  .delete-btn {     background: #ff4d4d;     color: white;     border: none;     padding: 5px 10px;     border-radius: 4px;     cursor: pointer; }  .delete-btn:hover {     background: #cc0000; }

3. lépés: Funkciók JavaScript segítségével

Hozzunk létre egy script.js fájlt, amely kezeli a feladatok hozzáadását, kipipálását és törlését. js/script.js

// Változók const addButton = document.getElementById('add-button'); const todoInput = document.getElementById('todo-input'); const todoList = document.getElementById('todo-list');  // Feladat hozzáadása addButton.addEventListener('click', () => {     const task = todoInput.value.trim();     if (task) {         const li = document.createElement('li');         li.textContent = task;          // Törlés gomb         const deleteButton = document.createElement('button');         deleteButton.textContent = 'Törlés';         deleteButton.classList.add('delete-btn');         deleteButton.addEventListener('click', () => {             li.remove();         });          // Kész állapot váltása         li.addEventListener('click', () => {             li.classList.toggle('completed');         });          li.appendChild(deleteButton);         todoList.appendChild(li);         todoInput.value = ''; // Input mező kiürítése     } }); 

Mappa struktúra

Projekt mappa

├── index.html # A fő HTML fájl
├── css # Stílusokat tartalmazó mappa
│ └── style.css # Az alkalmazás CSS fájlja
├── js # JavaScript kódokat tartalmazó mappa
│ └── script.js # Az alkalmazás funkcionális JavaScript kódja
└── README.md # Opcionális: Rövid dokumentáció a projekthez (pl. fejlesztési jegyzetek, használati utasítás)

Letöltés