test / index.html
taowei's picture
建立一个h5 游戏发布的门户网站 - Follow Up Deployment
c6d7e6d verified
raw
history blame
6.08 kB
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Game Portal - HTML5 Games</title>
<script src="https://cdn.tailwindcss.com"></script>
<style>
.game-card {
transition: all 0.3s ease;
}
.game-card:hover {
box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3);
}
.category-tag {
transition: all 0.2s ease;
}
.category-tag:hover {
transform: translateY(-2px);
}
</style>
</head>
<body class="bg-gray-900 min-h-screen flex flex-col items-center justify-center overflow-hidden">
<div class="text-center mb-8">
<h1 class="text-4xl md:text-6xl font-bold text-white mb-4">HTML5 Game Portal</h1>
<p class="text-xl text-blue-300">Play the best free games in your browser</p>
</div>
<div class="w-full max-w-6xl px-4">
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
<!-- Game Card 1 -->
<div class="bg-gray-800 rounded-lg overflow-hidden shadow-lg transition-transform hover:scale-105">
<img src="https://via.placeholder.com/400x250" alt="Space Adventure" class="w-full h-48 object-cover">
<div class="p-4">
<h3 class="text-xl font-bold text-white mb-2">Space Adventure</h3>
<p class="text-gray-300 mb-4">Navigate through asteroid fields and collect power-ups!</p>
<button class="bg-blue-600 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded w-full">
Play Now
</button>
</div>
</div>
<!-- Game Card 2 -->
<div class="bg-gray-800 rounded-lg overflow-hidden shadow-lg transition-transform hover:scale-105">
<img src="https://via.placeholder.com/400x250" alt="Puzzle Quest" class="w-full h-48 object-cover">
<div class="p-4">
<h3 class="text-xl font-bold text-white mb-2">Puzzle Quest</h3>
<p class="text-gray-300 mb-4">Solve challenging puzzles to advance through levels.</p>
<button class="bg-blue-600 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded w-full">
Play Now
</button>
</div>
</div>
<!-- Game Card 3 -->
<div class="bg-gray-800 rounded-lg overflow-hidden shadow-lg transition-transform hover:scale-105">
<img src="https://via.placeholder.com/400x250" alt="Racing Legends" class="w-full h-48 object-cover">
<div class="p-4">
<h3 class="text-xl font-bold text-white mb-2">Racing Legends</h3>
<p class="text-gray-300 mb-4">Compete against AI in high-speed races.</p>
<button class="bg-blue-600 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded w-full">
Play Now
</button>
</div>
</div>
</div>
<div class="mt-12 bg-gray-800 rounded-lg p-6">
<h2 class="text-2xl font-bold text-white mb-4">About Our Portal</h2>
<p class="text-gray-300 mb-4">
We host the best HTML5 games that work directly in your browser with no downloads required.
All games are free to play and mobile-friendly.
</p>
<div class="flex flex-wrap gap-4">
<span class="bg-blue-600 text-white px-3 py-1 rounded-full text-sm">Action</span>
<span class="bg-green-600 text-white px-3 py-1 rounded-full text-sm">Adventure</span>
<span class="bg-purple-600 text-white px-3 py-1 rounded-full text-sm">Puzzle</span>
<span class="bg-yellow-600 text-white px-3 py-1 rounded-full text-sm">Racing</span>
<span class="bg-red-600 text-white px-3 py-1 rounded-full text-sm">Sports</span>
</div>
</div>
</div>
<script>
// Game card click handlers
document.querySelectorAll('.game-card button').forEach(button => {
button.addEventListener('click', function() {
const gameTitle = this.closest('.game-card').querySelector('h3').textContent;
alert(`Launching ${gameTitle}... (This would load the actual game)`);
// In a real implementation, this would load the game iframe or redirect
// window.location.href = `/games/${gameTitle.toLowerCase().replace(' ', '-')}`;
});
});
// Filter games by category (placeholder functionality)
document.querySelectorAll('.category-tag').forEach(tag => {
tag.addEventListener('click', function() {
const category = this.textContent;
alert(`Filtering by ${category} games...`);
// In a real implementation, this would filter the game cards
// document.querySelectorAll('.game-card').forEach(card => {
// card.style.display = card.dataset.category.includes(category) ? 'block' : 'none';
// });
});
});
</script>
<p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=taowei/test" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
</html>