<!DOCTYPE html> <html lang="fr"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Tableau Dynamique</title> <style> /* Style de la table */ table { border-collapse: collapse; width: 100%; } /* Style pour les cellules */ table th, table td { border: 1px solid black; padding: 5px; text-align: center; min-width: 100px; /* Largeur minimale des cellules */ } table th { background-color: #f2f2f2; } /* Conteneur qui aura la barre de défilement horizontale */ .table-container { max-width: 1200px; /* Limite la largeur du tableau */ overflow-x: auto; /* Ajoute la barre de défilement horizontale */ margin: 20px 0; } </style> </head> <body> <!-- Conteneur qui gère la barre de défilement --> <div class="table-container" role="region" aria-labelledby="caption" tabindex="0"> <table id="dynamic-table"> <caption id="caption">Tableau Dynamique de 50 lignes et 100 colonnes</caption> <thead> <tr id="header-row"> <th>Teams</th> <!-- Les en-têtes de colonnes pour les 100 colonnes --> </tr> </thead> <tbody id="table-body"></tbody> </table> </div> <script> // Fonction pour créer le tableau avec 50 lignes et 100 colonnes function generateTable(rows, cols) { const tableBody = document.getElementById('table-body'); const headerRow = document.getElementById('header-row'); // Ajouter les en-têtes de colonnes (100 colonnes) for (let i = 1; i <= cols; i++) { const th = document.createElement('th'); th.textContent = `Col ${i}`; // Numéro de la colonne headerRow.appendChild(th); } // Ajouter les lignes (50 lignes) for (let i = 1; i <= rows; i++) { const newRow = document.createElement('tr'); // Ajouter une cellule avec le nom de l'équipe const teamCell = document.createElement('th'); teamCell.textContent = `Team ${i}`; newRow.appendChild(teamCell); // Ajouter 100 colonnes avec des valeurs par défaut (par exemple, '0') for (let j = 1; j <= cols; j++) { const td = document.createElement('td'); td.textContent = '0'; // Valeur par défaut newRow.appendChild(td); } // Ajouter la ligne au tableau tableBody.appendChild(newRow); } } // Appel de la fonction pour générer un tableau de 50 lignes et 100 colonnes generateTable(50, 100); </script> </body> </html>