<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title> Seleção Brasileira </title>
<style>
/* Configurações Gerais e Fontes */
body {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
margin: 0;
padding: 20px;
color: #ffffff;
display: flex;
flex-direction: column;
align-items: center;
background: #009C3B;
}
/* Título Principal */
h1 {
background-color: #FFDC00;
color: #002776;
padding: 15px 40px;
border-radius: 50px;
text-transform: uppercase;
letter-spacing: 2px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
margin-bottom: 30px;
display: inline-block;
}
/* Subtítulos */
h2, h3 {
color: #FFDC00;
text-transform: uppercase;
letter-spacing: 1px;
border-bottom: 3px solid #002776;
padding-bottom: 5px;
width: 100%;
max-width: 600px;
margin-top: 30px;
}
/* Lista de Jogadores */
ul {
list-style: none;
padding: 0;
width: 100%;
max-width: 600px;
display: grid;
grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
gap: 12px;
}
li {
background: rgba(0, 39, 118, 0.6);
backdrop-filter: blur(5px);
padding: 12px 20px;
border-radius: 8px;
border-left: 5px solid #FFDC00;
transition: transform 0.2s, background-color 0.2s, box-shadow 0.2s;
box-shadow: 0 2px 8px rgba(0,0,0,0.15);
cursor: pointer; /* Indica que o elemento é clicável */
}
li:hover {
transform: translateY(-3px) scale(1.02);
background: rgba(0, 39, 118, 0.85);
box-shadow: 0 6px 15px rgba(0,0,0,0.3);
}
li:active {
transform: scale(0.98);
}
li b {
color: #FFDC00;
margin-right: 5px;
}
/* Tabela de Artilheiro */
table {
width: 100%;
max-width: 600px;
border-collapse: collapse !important;
background-color: #002776;
border-radius: 8px;
overflow: hidden;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
margin-top: 15px;
margin-bottom: 30px;
border: none !important;
}
th {
background-color: #FFDC00;
color: #002776;
padding: 12px;
font-weight: bold;
text-transform: uppercase;
}
td {
padding: 12px;
text-align: center;
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
font-size: 1.1em;
}
/* Imagem Principal */
img {
max-width: 100%;
height: auto !important;
border-radius: 12px;
box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4);
border: 4px solid #FFDC00;
margin-top: 15px;
max-width: 600px;
}
/* Animações de Entrada (Fade In) */
@keyframes fadeInUp {
from { opacity: 0; transform: translateY(15px); }
to { opacity: 1; transform: translateY(0); }
}
h1, h2, h3, table, .main-img, ul li {
animation: fadeInUp 0.5s ease-out forwards;
opacity: 0;
}
h1 { animation-delay: 0.1s; }
h2 { animation-delay: 0.2s; }
ul { opacity: 1; }
ul li { animation-delay: 0.3s; }
h3 { animation-delay: 0.4s; }
table { animation-delay: 0.45s; }
.main-img { animation-delay: 0.5s; }
/* Janela Modal (Sistema de exibição de imagens) */
.player-modal {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.85);
display: flex;
justify-content: center;
align-items: center;
z-index: 1000;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s, visibility 0.3s;
backdrop-filter: blur(5px);
}
.player-modal.active {
opacity: 1;
visibility: visible;
}
.modal-content {
background: #002776;
padding: 25px;
border-radius: 15px;
border: 5px solid #FFDC00;
text-align: center;
position: relative;
max-width: 90%;
max-height: 85vh;
display: flex;
flex-direction: column;
align-items: center;
box-shadow: 0 10px 40px rgba(0,0,0,0.5);
transform: scale(0.8);
transition: transform 0.3s ease-out;
}
.player-modal.active .modal-content {
transform: scale(1);
}
.close-modal {
position: absolute;
top: -15px;
right: -15px;
background: #FFDC00;
color: #002776;
border: none;
width: 35px;
height: 35px;
border-radius: 50%;
font-size: 20px;
font-weight: bold;
cursor: pointer;
box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}
.modal-player-name {
color: #FFDC00;
font-size: 1.5em;
text-transform: uppercase;
margin: 0 0 15px 0;
font-weight: bold;
letter-spacing: 1px;
}
.modal-player-img {
max-width: 100%;
max-height: 60vh;
object-fit: contain;
border-radius: 8px;
border: 2px solid #ffffff;
margin: 0;
background-color: #001f5c;
}
</style>
</head>
<body bgcolor="#009C3B">
<center>
<h1> Lista de Convocados </h1>
</center>
<h2> Jogadores/Os home aí </h2>
<ul id="lista-jogadores">
<li><b>Camisa 1:</b>Alisson Becker </li>
<li><b>Camisa 2:</b>Éderson </li>
<li><b>Camisa 3:</b>Gabriel Magalhães </li>
<li><b>Camisa 4:</b>Marquinhos </li>
<li><b>Camisa 5:</b>Casemiro </li>
<li><b>Camisa 6:</b>Alex Sandro </li>
<li><b>Camisa 7:</b>Vinicius Junior </li>
<li><b>Camisa 8:</b>Bruno Guimarães </li>
<li><b>Camisa 9:</b>Matheus Cunha </li>
<li><b>Camisa 10:</b>Neymar </li>
<li><b>Camisa 11:</b>Raphinha </li>
<li><b>Camisa 12:</b>Weverton </li>
<li><b>Camisa 13:</b>Danilo Silva </li>
<li><b>Camisa 14:</b>Gleison Bremer </li>
<li><b>Camisa 15:</b>Léo Pereira </li>
<li><b>Camisa 16:</b>Douglas Santos </li>
<li><b>Camisa 17:</b>Fabinho </li>
<li><b>Camisa 18:</b>Danilo Santos </li>
<li><b>Camisa 19:</b>Endrick </li>
<li><b>Camisa 20:</b>Lucas Paqueta </li>
<li><b>Camisa 21:</b>Luiz Henrique </li>
<li><b>Camisa 22:</b>Gabriel Martinelli </li>
<li><b>Camisa 23:</b>Ederson Santana </li>
<li><b>Camisa 24:</b>Ibañez </li>
<li><b>Camisa 25:</b>Igor Thiago </li>
<li><b>Camisa 26:</b>Rayan </li>
</ul>
<h3> Artilheiro da Seleção </h3>
<table border="2">
<tr>
<th>Jogador</th>
<th>Gols</th>
</tr>
<tr>
<td> Vini JR </td>
<td> 5 Gols </td>
</tr>
</table>
<img src="https://admin.cnnbrasil.com.br/wp-content/uploads/sites/12/2026/06/gol-vini-jr-brasil-escocia-4-e1782339945487.jpg?w=1200&h=675&crop=1" width="1200" height="675" class="main-img">
<div class="player-modal" id="popup-jogador">
<div class="modal-content">
<button class="close-modal" id="fechar-popup">×</button>
<p class="modal-player-name" id="nome-popup"></p>
<img src="" alt="Foto do Jogador" class="modal-player-img" id="foto-popup">
</div>
</div>
<script>
const playerImages = {
"1": "https://upload.wikimedia.org/wikipedia/commons/4/4f/Alisson_Becker_Brazil_V_Morocco_13_June_2026-117_%28cropped%29.jpg", // Alisson Becker
"2": "https://s2-ge.glbimg.com/fw9cZWiM035fupFGg474r7Llygw=/0x0:1024x683/984x0/smart/filters:strip_icc()/i.s3.glbimg.com/v1/AUTH_bc8228b6673f488aa253bbcb03c80ec5/internal_photos/bs/2025/v/d/p95UE8T6mpWcAJRRIu9g/gettyimages-1725735792.jpg", // Éderson
"3": "https://upload.wikimedia.org/wikipedia/commons/8/8e/Gabriel_Magalhaes_Brazil_V_Morocco_13_June_2026-132_%28cropped%29.jpg", // Gabriel Magalhães
"4": "https://cdn-img.staticzz.com/img/planteis/new/28/75/10842875_marquinhos_20250602095836.jpg", // Marquinhos
"5": "https://upload.wikimedia.org/wikipedia/commons/2/2f/Casemiro_Brazil_V_Morocco_13_June_2026-76_%28cropped%29.jpg", // Casemiro
"6": "https://img.a.transfermarkt.technology/portrait/big/79960-1751370710.jpg?lm=1", // Alex Sandro
"7": "https://admin.cnnbrasil.com.br/wp-content/uploads/sites/12/2026/06/gol-vini-jr-brasil-escocia-4-e1782339945487.jpg?w=1200&h=675&crop=1", // Vinicius Junior
"8": "https://upload.wikimedia.org/wikipedia/commons/7/70/Bruno_Guimaraes_Brazil_V_Morocco_13_June_2026-78_%28cropped%29.jpg", // Bruno Guimarães
"9": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQEmVAfBvgk8GBvugs22CqYlWLYLpSd_Bvyxw&s", // Matheus Cunha
"10": "https://admin.cnnbrasil.com.br/wp-content/uploads/sites/12/2026/06/neymar-brasil-escocia-getty-e1782345493707.jpg?w=1200&h=1200&crop=1", // Neymar
"11": "https://www.band.com.br/_next/image?url=https%3A%2F%2Fimg.band.com.br%2Fimage%2F2026%2F06%2F25%2Fraphinha-agradece-aos-torcedores-apos-a-partida-do-brasil-contra-haiti-142527.jpg&w=3840&q=75", // Raphinha
"12": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/da/Weverton_Brazil_V_Morocco_13_June_2026-67_%28cropped%29.jpg/960px-Weverton_Brazil_V_Morocco_13_June_2026-67_%28cropped%29.jpg", // Weverton
"13": "https://veja.abril.com.br/wp-content/uploads/2022/12/GettyImages-1245389887.jpg?crop=1&resize=1212,909", // Danilo Silva
"14": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRnpVk6_a_i-Z_I62dcTt9kgg5Ez2OAfGpP5Q&s", // Gleison Bremer
"15": "https://upload.wikimedia.org/wikipedia/commons/thumb/d/db/Leo_Pereira_Brazil_V_Morocco_13_June_2026-136_%28cropped%29.jpg/960px-Leo_Pereira_Brazil_V_Morocco_13_June_2026-136_%28cropped%29.jpg", // Léo Pereira (Padrão Ação)
"16": "https://img.a.transfermarkt.technology/portrait/big/220793-1756746479.png?lm=1", // Douglas Santos (Padrão Ação)
"17": "https://upload.wikimedia.org/wikipedia/commons/d/d0/Fabinho_Brazil_V_Morocco_13_June_2026-70.jpg", // Fabinho
"18": "https://lncimg.lance.com.br/cdn-cgi/image/width=850,quality=75,format=webp/uploads/2026/03/20260331-221612_2411109_3103-1280x1920.jpg", // Danilo Santos (Padrão Ação)
"19": "https://s2-quem.glbimg.com/wLGmmcO9bqJloE37os6LXsTu3_Q=/0x0:1400x950/888x0/smart/filters:strip_icc()/i.s3.glbimg.com/v1/AUTH_b0f0e84207c948ab8b8777be5a6a4395/internal_photos/bs/2026/w/M/LlLRkISDSXho2apEqceg/design-sem-nome-15-.png", // Endrick
"20": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRR9OlkDQOwmuuFcZGa3Ot5kt08Iii5ukOwsQ&s", // Lucas Paqueta
"21": "https://img.a.transfermarkt.technology/portrait/big/800175-1756746940.png?lm=1", // Luiz Henrique
"22": "https://img.a.transfermarkt.technology/portrait/big/655488-1682689091.jpg?lm=1", // Gabriel Martinelli
"23": "https://upload.wikimedia.org/wikipedia/commons/0/02/Ederson_Brazil_V_Morocco_13_June_2026-14_%28cropped%29.jpg", // Ederson Santana
"24": "https://admin.cnnbrasil.com.br/wp-content/uploads/sites/12/2026/06/Ibanez-zagueiro-da-Selecao.jpg?w=419&h=283&crop=0", // Ibañez
"25": "https://img.a.transfermarkt.technology/portrait/big/739443-1770372295.jpg?lm=1", // Igor Thiago (Padrão Estádio)
"26": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTpEnn1FpWnifxiZI5R8MXJ1BtNtUYWEMDWMg&s" // Rayan (Padrão Bola)
};
const lista = document.getElementById('lista-jogadores');
const popup = document.getElementById('popup-jogador');
const popupNome = document.getElementById('nome-popup');
const popupFoto = document.getElementById('foto-popup');
const btnFechar = document.getElementById('fechar-popup');
// Controla os cliques na listagem
lista.querySelectorAll('li').forEach(li => {
li.addEventListener('click', function() {
const textoCamisa = this.querySelector('b').textContent;
const numeroCamisa = textoCamisa.replace('Camisa ', '').replace(':', '').trim();
const nomeJogador = this.textContent.replace(textoCamisa, '').trim();
// Carrega a URL exclusiva do objeto baseado no número
const urlFoto = playerImages[numeroCamisa];
popupNome.textContent = `Nº ${numeroCamisa} - ${nomeJogador}`;
popupFoto.src = urlFoto;
popup.classList.add('active');
});
});
// Fechamento da janela modal
function fechar() { popup.classList.remove('active'); }
btnFechar.addEventListener('click', fechar);
popup.addEventListener('click', (e) => { if(e.target === popup) fechar(); });
document.addEventListener('keydown', (e) => { if(e.key === 'Escape') fechar(); });
</script>
</body>
</html>
0 comentários:
Postar um comentário