Rename to index.html and clean up extra files
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,335 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang="en">
|
|
||||||
<head>
|
|
||||||
<meta charset="UTF-8">
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
||||||
<title>Arknights Endfield - Character Showcase</title>
|
|
||||||
<style>
|
|
||||||
* {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
|
||||||
background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f0f23 100%);
|
|
||||||
color: #fff;
|
|
||||||
overflow-x: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero {
|
|
||||||
height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
justify-content: center;
|
|
||||||
align-items: center;
|
|
||||||
text-align: center;
|
|
||||||
background: radial-gradient(ellipse at center, #252540 0%, #1a1a2e 100%);
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero::before {
|
|
||||||
content: '';
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
bottom: 0;
|
|
||||||
background: url('logo/endfield_share.jpg') center/cover;
|
|
||||||
opacity: 0.1;
|
|
||||||
z-index: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero-content {
|
|
||||||
z-index: 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
.logo-svg {
|
|
||||||
width: 300px;
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
font-size: 3rem;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
background: linear-gradient(90deg, #e94560, #f5a623, #ffcc00);
|
|
||||||
-webkit-background-clip: text;
|
|
||||||
-webkit-text-fill-color: transparent;
|
|
||||||
background-clip: text;
|
|
||||||
}
|
|
||||||
|
|
||||||
.hero p {
|
|
||||||
font-size: 1.2rem;
|
|
||||||
color: #aaa;
|
|
||||||
margin-bottom: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.scroll-indicator {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 30px;
|
|
||||||
animation: bounce 2s infinite;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes bounce {
|
|
||||||
0%, 100% { transform: translateY(0); }
|
|
||||||
50% { transform: translateY(-10px); }
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-section {
|
|
||||||
min-height: 100vh;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
padding: 80px 20px;
|
|
||||||
position: relative;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-section:nth-child(even) {
|
|
||||||
background: linear-gradient(90deg, #1a1a2e 0%, #16213e 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-section:nth-child(odd) {
|
|
||||||
background: linear-gradient(90deg, #16213e 0%, #1a1a2e 100%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-container {
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
max-width: 1200px;
|
|
||||||
gap: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-image {
|
|
||||||
max-width: 100%;
|
|
||||||
height: auto;
|
|
||||||
border-radius: 20px;
|
|
||||||
box-shadow: 0 20px 60px rgba(233, 69, 96, 0.3);
|
|
||||||
transition: transform 0.3s ease, box-shadow 0.3s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-image:hover {
|
|
||||||
transform: scale(1.05);
|
|
||||||
box-shadow: 0 30px 80px rgba(233, 69, 96, 0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-info {
|
|
||||||
text-align: center;
|
|
||||||
max-width: 600px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-info h2 {
|
|
||||||
font-size: 2.5rem;
|
|
||||||
margin-bottom: 15px;
|
|
||||||
color: #f5a623;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-info .tier {
|
|
||||||
display: inline-block;
|
|
||||||
padding: 8px 20px;
|
|
||||||
background: linear-gradient(90deg, #e94560, #f5a623);
|
|
||||||
border-radius: 25px;
|
|
||||||
font-weight: bold;
|
|
||||||
margin-bottom: 15px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-info .element {
|
|
||||||
color: #aaa;
|
|
||||||
font-size: 1.1rem;
|
|
||||||
margin-bottom: 10px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-info .role {
|
|
||||||
color: #888;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Scroll animations */
|
|
||||||
.character-section {
|
|
||||||
opacity: 0;
|
|
||||||
transform: translateY(50px);
|
|
||||||
transition: opacity 0.8s ease, transform 0.8s ease;
|
|
||||||
}
|
|
||||||
|
|
||||||
.character-section.visible {
|
|
||||||
opacity: 1;
|
|
||||||
transform: translateY(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Nav */
|
|
||||||
nav {
|
|
||||||
position: fixed;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
right: 0;
|
|
||||||
padding: 20px;
|
|
||||||
background: rgba(15, 15, 30, 0.9);
|
|
||||||
backdrop-filter: blur(10px);
|
|
||||||
z-index: 1000;
|
|
||||||
display: flex;
|
|
||||||
justify-content: center;
|
|
||||||
gap: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav a {
|
|
||||||
color: #fff;
|
|
||||||
text-decoration: none;
|
|
||||||
font-weight: 500;
|
|
||||||
transition: color 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
nav a:hover {
|
|
||||||
color: #f5a623;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Floating action button */
|
|
||||||
.fab {
|
|
||||||
position: fixed;
|
|
||||||
bottom: 30px;
|
|
||||||
right: 30px;
|
|
||||||
width: 60px;
|
|
||||||
height: 60px;
|
|
||||||
background: linear-gradient(135deg, #e94560, #f5a623);
|
|
||||||
border-radius: 50%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
cursor: pointer;
|
|
||||||
box-shadow: 0 10px 30px rgba(233, 69, 96, 0.4);
|
|
||||||
transition: transform 0.3s;
|
|
||||||
z-index: 1000;
|
|
||||||
}
|
|
||||||
|
|
||||||
.fab:hover {
|
|
||||||
transform: scale(1.1);
|
|
||||||
}
|
|
||||||
|
|
||||||
.fab::after {
|
|
||||||
content: '↓';
|
|
||||||
font-size: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Responsive */
|
|
||||||
@media (max-width: 768px) {
|
|
||||||
h1 { font-size: 2rem; }
|
|
||||||
.character-info h2 { font-size: 2rem; }
|
|
||||||
nav { padding: 15px; }
|
|
||||||
.logo-svg { width: 200px; }
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<nav>
|
|
||||||
<a href="#hero">Home</a>
|
|
||||||
<a href="#laevatain">Laevatain</a>
|
|
||||||
<a href="#yvonne">Yvonne</a>
|
|
||||||
<a href="#gilberta">Gilberta</a>
|
|
||||||
<a href="#lifeng">Lifeng</a>
|
|
||||||
<a href="#perlica">Perlica</a>
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
<section id="hero" class="hero">
|
|
||||||
<div class="hero-content">
|
|
||||||
<img src="logo/logo.svg" alt="Arknights Endfield Logo" class="logo-svg">
|
|
||||||
<h1>Arknights Endfield</h1>
|
|
||||||
<p>Official Character Showcase</p>
|
|
||||||
<p style="color: #f5a623;">Scroll to meet the operators →</p>
|
|
||||||
</div>
|
|
||||||
<div class="scroll-indicator">↓</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="laevatain" class="character-section">
|
|
||||||
<div class="character-container">
|
|
||||||
<img src="../web-assets/characters/Laevatain_4K.jpg" alt="Laevatain" class="character-image">
|
|
||||||
<div class="character-info">
|
|
||||||
<h2>Laevatain</h2>
|
|
||||||
<span class="tier">SS TIER</span>
|
|
||||||
<p class="element">Heat Element | Striker Class</p>
|
|
||||||
<p class="role">"Twilight of ruin!" - Best DPS in the game. Excels at both AoE and single-target damage.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="yvonne" class="character-section">
|
|
||||||
<div class="character-container">
|
|
||||||
<img src="../web-assets/characters/Yvonne_4K.jpg" alt="Yvonne" class="character-image">
|
|
||||||
<div class="character-info">
|
|
||||||
<h2>Yvonne</h2>
|
|
||||||
<span class="tier">SS TIER</span>
|
|
||||||
<p class="element">Cryo Element | Caster Class</p>
|
|
||||||
<p class="role">"Ætherside... An unknown and dangerous world." - Strong single-target Cryo DPS with crowd control.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="gilberta" class="character-section">
|
|
||||||
<div class="character-container">
|
|
||||||
<img src="../web-assets/characters/Gilberta_official.jpg" alt="Gilberta" class="character-image">
|
|
||||||
<div class="character-info">
|
|
||||||
<h2>Gilberta</h2>
|
|
||||||
<span class="tier">S TIER</span>
|
|
||||||
<p class="element">Nature Element | Support Class</p>
|
|
||||||
<p class="role">"You are the smell of nostalgia and homesickness." - Best utility, pulls enemies together with crowd control.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="lifeng" class="character-section">
|
|
||||||
<div class="character-container">
|
|
||||||
<img src="../web-assets/characters/Lifeng_official.jpg" alt="Lifeng" class="character-image">
|
|
||||||
<div class="character-info">
|
|
||||||
<h2>Lifeng</h2>
|
|
||||||
<span class="tier">S TIER</span>
|
|
||||||
<p class="element">Physical Element | Guard Class</p>
|
|
||||||
<p class="role">"I wanna do more, and get better at it!" - One of the best Physical DPS units.</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<section id="perlica" class="character-section">
|
|
||||||
<div class="character-container">
|
|
||||||
<img src="../web-assets/characters/Perlica_official.jpg" alt="Perlica" class="character-image">
|
|
||||||
<div class="character-info">
|
|
||||||
<h2>Perlica</h2>
|
|
||||||
<span class="tier">A TIER</span>
|
|
||||||
<p class="element">Electric Element | Caster Class</p>
|
|
||||||
<p class="role">"We don't simply talk about our dreams. No. We do what we can to make them a reality."</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</section>
|
|
||||||
|
|
||||||
<a href="#" class="fab" onclick="window.scrollTo({top: 0, behavior: 'smooth'})"></a>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
// Scroll animations
|
|
||||||
const sections = document.querySelectorAll('.character-section');
|
|
||||||
|
|
||||||
const observer = new IntersectionObserver((entries) => {
|
|
||||||
entries.forEach(entry => {
|
|
||||||
if (entry.isIntersecting) {
|
|
||||||
entry.target.classList.add('visible');
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}, {
|
|
||||||
threshold: 0.2
|
|
||||||
});
|
|
||||||
|
|
||||||
sections.forEach(section => {
|
|
||||||
observer.observe(section);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Smooth scroll for nav links
|
|
||||||
document.querySelectorAll('nav a').forEach(anchor => {
|
|
||||||
anchor.addEventListener('click', function(e) {
|
|
||||||
e.preventDefault();
|
|
||||||
const targetId = this.getAttribute('href').substring(1);
|
|
||||||
const targetElement = document.getElementById(targetId);
|
|
||||||
if (targetElement) {
|
|
||||||
targetElement.scrollIntoView({ behavior: 'smooth' });
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Reference in New Issue
Block a user