![]()
💬 开场白
“`html
<html>
<head>
<style>
@import url('https://fonts.googleapis.com/css2?family=Ma+Shan+Zheng&family=ZCOOL+QingKe+HuangYou&family=ZCOOL+XiaoWei&display=swap');* {
margin: 0;
padding: 0;
box-sizing: border-box;
font-family: 'ZCOOL XiaoWei', sans-serif;
}body {
background-color: #f7f3e9; /* 宣纸色背景 */
background-image:
radial-gradient(circle at 20% 80%, rgba(120, 119, 198, 0.1) 0%, transparent 50%),
radial-gradient(circle at 80% 20%, rgba(218, 165, 32, 0.1) 0%, transparent 50%);
color: #3a3a3a;
overflow-x: hidden;
min-height: 100vh;
}.container {
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}.header {
text-align: center;
padding: 30px 0;
background: linear-gradient(135deg, #2c5530 0%, #4a7c59 50%, #daa520 100%);
border-radius: 20px;
box-shadow: 0 8px 25px rgba(42, 85, 48, 0.3);
margin-bottom: 30px;
position: relative;
overflow: hidden;
}.header::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M0,0 L100,0 L95,5 L5,5 Z" fill="rgba(218,165,32,0.3)"/></svg>') repeat-x;
background-size: 100px 10px;
}.title {
font-family: 'Ma Shan Zheng', cursive;
font-size: 3.5rem;
color: #f7f3e9;
text-shadow: 3px 3px 6px rgba(0,0,0,0.4);
margin-bottom: 10px;
position: relative;
z-index: 2;
}.subtitle {
font-family: 'ZCOOL QingKe HuangYou', cursive;
font-size: 1.4rem;
color: #daa520;
margin-bottom: 20px;
position: relative;
z-index: 2;
}.card {
background-color: #fefcf7;
border-radius: 15px;
box-shadow: 0 8px 20px rgba(60, 90, 65, 0.15);
padding: 30px;
margin-bottom: 30px;
position: relative;
overflow: hidden;
border: 2px solid #daa520;
border-image: linear-gradient(45deg, #daa520, #2c5530, #daa520) 1;
}.card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 8px;
background: linear-gradient(90deg, #2c5530, #daa520, #2c5530);
}.card-title {
font-family: 'ZCOOL QingKe HuangYou', cursive;
font-size: 2rem;
color: #2c5530;
margin-bottom: 20px;
border-bottom: 3px solid #daa520;
padding-bottom: 12px;
position: relative;
}.card-title::after {
content: '⚔️';
position: absolute;
right: 0;
bottom: -2px;
font-size: 1.5rem;
}.card-content {
font-size: 1.2rem;
line-height: 1.8;
color: #4a4a4a;
}.card-content p {
margin-bottom: 18px;
}.card-content strong {
color: #2c5530;
font-weight: bold;
}.characters {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 25px;
margin-top: 25px;
}.character-card {
background: linear-gradient(145deg, #fefcf7, #f5f1e8);
border-radius: 18px;
box-shadow: 0 6px 15px rgba(44, 85, 48, 0.2);
overflow: hidden;
transition: all 0.4s ease;
border: 3px solid #daa520;
position: relative;
}.character-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 6px;
background: linear-gradient(90deg, #2c5530, #4a7c59, #daa520);
}.character-card:hover {
transform: translateY(-8px) scale(1.02);
box-shadow: 0 12px 25px rgba(44, 85, 48, 0.3);
border-color: #2c5530;
}.character-img {
width: 100%;
height: 280px;
object-fit: cover;
border-bottom: 4px solid #daa520;
filter: sepia(10%) saturate(110%);
transition: filter 0.3s ease;
}.character-card:hover .character-img {
filter: sepia(0%) saturate(120%);
}.character-info {
padding: 20px;
background: rgba(247, 243, 233, 0.9);
}.character-name {
font-family: 'ZCOOL QingKe HuangYou', cursive;
font-size: 1.5rem;
color: #2c5530;
margin-bottom: 8px;
text-align: center;
}.character-desc {
font-size: 1.1rem;
color: #666;
text-align: center;
font-style: italic;
}.features {
display: flex;
flex-wrap: wrap;
gap: 18px;
margin-top: 25px;
}.feature-tag {
background: linear-gradient(45deg, #4a7c59, #2c5530);
color: #f7f3e9;
padding: 12px 20px;
border-radius: 25px;
font-size: 1.1rem;
font-weight: bold;
display: inline-block;
box-shadow: 0 4px 8px rgba(44, 85, 48, 0.3);
transition: all 0.3s ease;
border: 2px solid #daa520;
}.feature-tag:hover {
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(44, 85, 48, 0.4);
background: linear-gradient(45deg, #daa520, #b8860b);
color: #2c5530;
}.scenarios {
margin-top: 25px;
}.scenario-item {
background: linear-gradient(135deg, #fefcf7, #f9f5eb);
border-left: 6px solid #daa520;
border-right: 2px solid #2c5530;
padding: 20px;
margin-bottom: 18px;
border-radius: 0 15px 15px 0;
cursor: pointer;
transition: all 0.3s ease;
font-size: 1.1rem;
box-shadow: 0 3px 8px rgba(44, 85, 48, 0.15);
}.scenario-item:hover {
transform: translateX(8px);
background: linear-gradient(135deg, #f5f1e8, #ede8d8);
box-shadow: 0 5px 15px rgba(44, 85, 48, 0.25);
border-left-color: #2c5530;
}.footer {
text-align: center;
padding: 25px 0;
color: #666;
font-size: 1rem;
margin-top: 35px;
border-top: 3px solid #daa520;
background: rgba(247, 243, 233, 0.7);
border-radius: 10px;
}/* 音乐播放器样式 */
.music-player {
position: fixed;
bottom: 25px;
right: 25px;
background: linear-gradient(135deg, #2c5530, #4a7c59);
border-radius: 50px;
padding: 12px 18px;
display: flex;
align-items: center;
box-shadow: 0 6px 15px rgba(44, 85, 48, 0.4);
z-index: 1000;
border: 3px solid #daa520;
transition: all 0.3s ease;
}.music-player:hover {
transform: scale(1.05);
box-shadow: 0 8px 20px rgba(44, 85, 48, 0.5);
}.music-icon {
font-size: 1.6rem;
margin-right: 12px;
color: #daa520;
}.music-text {
font-size: 1rem;
color: #f7f3e9;
font-weight: bold;
}.music-controls {
margin-left: 12px;
cursor: pointer;
color: #daa520;
font-size: 1.4rem;
transition: color 0.3s ease;
}.music-controls:hover {
color: #f7f3e9;
}/* 响应式设计 */
@media (max-width: 768px) {
.container {
padding: 15px;
}.title {
font-size: 2.8rem;
}.characters {
grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
gap: 20px;
}.character-img {
height: 200px;
}.music-player {
bottom: 15px;
right: 15px;
padding: 8px 12px;
}.music-icon, .music-controls {
font-size: 1.2rem;
}.music-text {
font-size: 0.9rem;
}
}/* 装饰性元素 */
.card::after {
content: '';
position: absolute;
bottom: 0;
right: 0;
width: 60px;
height: 60px;
background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" fill="none" stroke="rgba(218,165,32,0.3)" stroke-width="2"/><path d="M30,50 L50,30 L70,50 L50,70 Z" fill="rgba(218,165,32,0.2)"/></svg>');
opacity: 0.6;
}
</style>
</head>
<body>
<!– 自动播放BGM –>
<audio id="bgm" autoplay loop>
<source src="https://files.catbox.moe/vge85e.mp3" type="audio/mp3">
</audio><div class="container">
<div class="header">
<h1 class="title">本卡介绍</h1>
<div class="subtitle">别问,问就是义结金兰</div>
</div><div class="card">
<h2 class="card-title">本卡介绍</h2>
<div class="card-content">
<p><strong>世界观:</strong>古代军旅,{{user}}是小厨娘</p>
<p><strong>性向:</strong>开场白默认BG,男{{user}}自己改</p>
<p>在所有人纠结亲哥哥和义哥哥哪个更亲的时候,赫连沙已经表示十分没眼看,为什么这些人都想睡自己妹妹?</p>
</div>
</div><div class="card">
<h2 class="card-title">攻略角色</h2>
<div class="characters">
<div class="character-card">
<img src="https://files.catbox.moe/7ytken.png" alt="霍惊弦" class="character-img">
<div class="character-info">
<h3 class="character-name">霍惊弦</h3>
<p class="character-desc">西北主帅,结义大哥</p>
</div>
</div><div class="character-card">
<img src="https://files.catbox.moe/sq2lhv.png" alt="江逐浪" class="character-img">
<div class="character-info">
<h3 class="character-name">江逐浪</h3>
<p class="character-desc">军师,结义二哥</p>
</div>
</div><div class="character-card">
<img src="https://files.catbox.moe/8t7avp.png" alt="顾诀" class="character-img">
<div class="character-info">
<h3 class="character-name">顾诀</h3>
<p class="character-desc">亲哥哥</p>
</div>
</div><div class="character-card">
<img src="https://files.catbox.moe/p8hs7a.png" alt="赫连沙" class="character-img">
<div class="character-info">
<h3 class="character-name">赫连沙</h3>
<p class="character-desc">金人俘虏</p>
</div>
</div>
</div>
</div><div class="card">
<h2 class="card-title">功能</h2>
<div class="features">
<div class="feature-tag">同层手机</div>
<div class="feature-tag">论坛</div>
<div class="feature-tag">日记</div>
<div class="feature-tag">书评</div>
</div>
</div><div class="card">
<h2 class="card-title">开场白选择</h2>
<div class="scenarios">
<div class="scenario-item" id="scenario1">1. 亲哥哥没有被邀请</div>
<div class="scenario-item" id="scenario2">2. 风雪夜归</div>
<div class="scenario-item" id="scenario3">3. 关于习字</div>
<div class="scenario-item" id="scenario4">4. 被俘虏挑衅了</div>
<div class="scenario-item" id="scenario5">5. 醉酒被吃醋的大哥(?)</div>
</div>
</div><div class="footer">
有问题联系作者类脑 | by金喵
</div>
</div><!– 音乐播放器 –>
<div class="music-player">
<div class="music-icon">🎵</div>
<div class="music-text">古风军旅</div>
<div class="music-controls" id="musicToggle">⏸️</div>
</div><script>
// 音乐播放控制
document.addEventListener('DOMContentLoaded', function() {
const bgm = document.getElementById('bgm');
const musicToggle = document.getElementById('musicToggle');// 尝试自动播放
bgm.play().catch(function(error) {
console.log('自动播放失败,需要用户交互: ', error);
musicToggle.textContent = '▶️';
});// 切换播放/暂停
musicToggle.addEventListener('click', function() {
if (bgm.paused) {
bgm.play();
musicToggle.textContent = '⏸️';
} else {
bgm.pause();
musicToggle.textContent = '▶️';
}
});// 为开场白选项添加点击效果
document.querySelectorAll('.scenario-item').forEach(item => {
item.addEventListener('click', function() {
// 添加选中效果
document.querySelectorAll('.scenario-item').forEach(el => el.style.backgroundColor = '');
this.style.backgroundColor = 'rgba(218, 165, 32, 0.2)';// 可以在这里添加更多交互逻辑
console.log('选择了开场白:', this.textContent);
});
});// 为角色卡片添加点击效果
document.querySelectorAll('.character-card').forEach(card => {
card.addEventListener('click', function() {
const characterName = this.querySelector('.character-name').textContent;
console.log('点击了角色:', characterName);
// 可以在这里添加角色详情展示逻辑
});
});
});
</script>
</body>
</html>
“`