feat: 添加猜歌页面及相关资源文件
新增猜歌页面(guess.html)及配套CSS/LESS文件 添加多个SVG图片资源用于页面展示 优化song-request-station页面标题和图标 移除song-request-station页面无用样式和图片
This commit is contained in:
241
static/css/guess.css
Normal file
241
static/css/guess.css
Normal file
@@ -0,0 +1,241 @@
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.container {
|
||||
width: 100%;
|
||||
background-color: #333333;
|
||||
}
|
||||
.container .flexflex {
|
||||
display: flex;
|
||||
}
|
||||
.container .flexcenter {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.container .flexjcenter {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.container .flexacenter {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.container .flex1 {
|
||||
flex: 1;
|
||||
}
|
||||
.container .flexcolumn {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.container .mar1200 {
|
||||
width: 1200px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.container .container-box {
|
||||
padding-top: 24px;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.container .container-box .logo {
|
||||
width: 121px;
|
||||
height: 24px;
|
||||
margin-bottom: 31px;
|
||||
}
|
||||
.container .container-box .header {
|
||||
position: relative;
|
||||
width: 1200px;
|
||||
height: 280px;
|
||||
border-radius: 20px;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
.container .container-box .header::after {
|
||||
content: "";
|
||||
width: 1200px;
|
||||
height: 280px;
|
||||
background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 100%);
|
||||
border-radius: 20px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
.container .container-box .header .halo {
|
||||
width: 240px;
|
||||
height: 214px;
|
||||
position: absolute;
|
||||
top: -71px;
|
||||
left: -59px;
|
||||
}
|
||||
.container .container-box .header .star-icon {
|
||||
position: absolute;
|
||||
top: 46px;
|
||||
left: 51px;
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .love-little {
|
||||
position: absolute;
|
||||
top: 120px;
|
||||
left: -9px;
|
||||
width: 173px;
|
||||
height: 148px;
|
||||
transform: rotate(315deg);
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .bj-2 {
|
||||
width: 360px;
|
||||
height: 128px;
|
||||
position: absolute;
|
||||
left: 25px;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .music-icon {
|
||||
width: 34px;
|
||||
height: 37px;
|
||||
position: absolute;
|
||||
top: 194px;
|
||||
left: 40px;
|
||||
transform: rotate(345deg);
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .bj {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
width: 1064px;
|
||||
height: 280px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .love-big {
|
||||
width: 298px;
|
||||
height: 256px;
|
||||
display: flex;
|
||||
transform: rotate(44deg);
|
||||
position: absolute;
|
||||
top: 22px;
|
||||
left: 64px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .music-score {
|
||||
width: 240px;
|
||||
height: 240px;
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
left: 197px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .question {
|
||||
width: 289px;
|
||||
height: 280px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 668px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .text {
|
||||
width: 243px;
|
||||
height: 210px;
|
||||
position: absolute;
|
||||
top: 50px;
|
||||
left: 423px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .face {
|
||||
width: 83px;
|
||||
height: 83px;
|
||||
position: absolute;
|
||||
top: -27px;
|
||||
left: 1080px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .star-icon-2 {
|
||||
width: 110px;
|
||||
height: 110px;
|
||||
position: absolute;
|
||||
left: 979px;
|
||||
top: 70px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .ai-music {
|
||||
width: 81px;
|
||||
height: 28px;
|
||||
position: absolute;
|
||||
top: 240px;
|
||||
left: 1106px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .record-black {
|
||||
width: 191px;
|
||||
height: 199px;
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: -1px;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .record-circle {
|
||||
position: absolute;
|
||||
top: 132px;
|
||||
left: 1063px;
|
||||
background-color: #72db86;
|
||||
width: 94px;
|
||||
height: 94px;
|
||||
border-radius: 50%;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .container-box .header .record-circle::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
display: block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 50%;
|
||||
background-color: #fff;
|
||||
}
|
||||
.container .container-box .header .green-glow {
|
||||
width: 306px;
|
||||
height: 62px;
|
||||
position: absolute;
|
||||
top: 245px;
|
||||
left: 217px;
|
||||
}
|
||||
.container .container-box .header .shadow {
|
||||
width: 240px;
|
||||
height: 165px;
|
||||
position: absolute;
|
||||
top: 151px;
|
||||
left: 997px;
|
||||
}
|
||||
.container .container-box .details {
|
||||
height: 500px;
|
||||
width: 1200px;
|
||||
border-radius: 20px;
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
padding: 3px;
|
||||
}
|
||||
.container .container-box .details::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: calc(100% - 6px);
|
||||
height: calc(100% - 6px);
|
||||
background-color: #7d4bf8;
|
||||
z-index: -1;
|
||||
border-radius: 18px;
|
||||
}
|
||||
.container .container-box .details .start-box {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
269
static/css/guess.less
Normal file
269
static/css/guess.less
Normal file
@@ -0,0 +1,269 @@
|
||||
* {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.container {
|
||||
.flexflex {
|
||||
display: flex;
|
||||
}
|
||||
.flexcenter {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.flexjcenter {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
.flexacenter {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.flex1 {
|
||||
flex: 1;
|
||||
}
|
||||
.flexcolumn {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.mar1200 {
|
||||
width: 1200px;
|
||||
margin: 0 auto;
|
||||
}
|
||||
|
||||
width: 100%;
|
||||
background-color: rgba(51, 51, 51, 1);
|
||||
|
||||
.container-box {
|
||||
padding-top: 24px;
|
||||
height: 100vh;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
|
||||
.logo {
|
||||
width: 121px;
|
||||
height: 24px;
|
||||
margin-bottom: 31px;
|
||||
}
|
||||
|
||||
.header {
|
||||
position: relative;
|
||||
width: 1200px;
|
||||
height: 280px;
|
||||
// background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 100%);
|
||||
border-radius: 20px;
|
||||
margin-bottom: 20px;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
width: 1200px;
|
||||
height: 280px;
|
||||
background: linear-gradient(180deg, rgba(125, 75, 248, 1) 0%, rgba(82, 65, 176, 1) 100%);
|
||||
border-radius: 20px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
}
|
||||
|
||||
.halo {
|
||||
width: 240px;
|
||||
height: 214px;
|
||||
position: absolute;
|
||||
top: -71px;
|
||||
left: -59px;
|
||||
}
|
||||
|
||||
.star-icon {
|
||||
position: absolute;
|
||||
top: 46px;
|
||||
left: 51px;
|
||||
width: 56px;
|
||||
height: 56px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.love-little {
|
||||
position: absolute;
|
||||
top: 120px;
|
||||
left: -9px;
|
||||
width: 173px;
|
||||
height: 148px;
|
||||
transform: rotate(315deg);
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.bj-2 {
|
||||
width: 360px;
|
||||
height: 128px;
|
||||
position: absolute;
|
||||
left: 25px;
|
||||
bottom: 0;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.music-icon {
|
||||
width: 34px;
|
||||
height: 37px;
|
||||
position: absolute;
|
||||
top: 194px;
|
||||
left: 40px;
|
||||
transform: rotate(345deg);
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.bj {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: 0;
|
||||
width: 1064px;
|
||||
height: 280px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.love-big {
|
||||
width: 298px;
|
||||
height: 256px;
|
||||
display: flex;
|
||||
transform: rotate(44deg);
|
||||
position: absolute;
|
||||
top: 22px;
|
||||
left: 64px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.music-score {
|
||||
width: 240px;
|
||||
height: 240px;
|
||||
position: absolute;
|
||||
top: 20px;
|
||||
left: 197px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.question {
|
||||
width: 289px;
|
||||
height: 280px;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 668px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.text {
|
||||
width: 243px;
|
||||
height: 210px;
|
||||
position: absolute;
|
||||
top: 50px;
|
||||
left: 423px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.face {
|
||||
width: 83px;
|
||||
height: 83px;
|
||||
position: absolute;
|
||||
top: -27px;
|
||||
left: 1080px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.star-icon-2 {
|
||||
width: 110px;
|
||||
height: 110px;
|
||||
position: absolute;
|
||||
left: 979px;
|
||||
top: 70px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.ai-music {
|
||||
width: 81px;
|
||||
height: 28px;
|
||||
position: absolute;
|
||||
top: 240px;
|
||||
left: 1106px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.record-black {
|
||||
width: 191px;
|
||||
height: 199px;
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
right: -1px;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.record-circle {
|
||||
position: absolute;
|
||||
top: 132px;
|
||||
left: 1063px;
|
||||
background-color: rgb(114, 219, 134);
|
||||
width: 94px;
|
||||
height: 94px;
|
||||
border-radius: 50%;
|
||||
z-index: 1;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
display: block;
|
||||
width: 10px;
|
||||
height: 10px;
|
||||
border-radius: 50%;
|
||||
background-color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.green-glow {
|
||||
width: 306px;
|
||||
height: 62px;
|
||||
position: absolute;
|
||||
top: 245px;
|
||||
left: 217px;
|
||||
}
|
||||
|
||||
.shadow {
|
||||
width: 240px;
|
||||
height: 165px;
|
||||
position: absolute;
|
||||
top: 151px;
|
||||
left: 997px;
|
||||
}
|
||||
}
|
||||
|
||||
.details {
|
||||
height: 500px;
|
||||
width: 1200px;
|
||||
border-radius: 20px;
|
||||
background-color: rgba(255, 255, 255, 0.1);
|
||||
position: relative;
|
||||
z-index: 1;
|
||||
padding: 3px;
|
||||
|
||||
&::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
transform: translate(-50%, -50%);
|
||||
width: calc(100% - 6px);
|
||||
height: calc(100% - 6px);
|
||||
background-color: #7d4bf8;
|
||||
z-index: -1;
|
||||
border-radius: 18px;
|
||||
}
|
||||
|
||||
.start-box {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -6,7 +6,6 @@
|
||||
.container {
|
||||
width: 100%;
|
||||
background-color: #333333;
|
||||
/* 气泡浮动动画 */
|
||||
}
|
||||
.container .flexflex {
|
||||
display: flex;
|
||||
@@ -40,44 +39,6 @@
|
||||
padding: 0;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.container body {
|
||||
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
min-height: 100vh;
|
||||
overflow: hidden;
|
||||
}
|
||||
.container .bubble-tag {
|
||||
position: absolute;
|
||||
padding: 8px 18px;
|
||||
border-radius: 25px;
|
||||
background-color: rgba(255, 255, 255, 0.9);
|
||||
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
|
||||
font-size: 14px;
|
||||
cursor: pointer;
|
||||
transition: transform 0.3s ease;
|
||||
user-select: none;
|
||||
z-index: 1;
|
||||
}
|
||||
.container .bubble-tag:hover {
|
||||
transform: scale(1.15);
|
||||
z-index: 10;
|
||||
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
@keyframes float {
|
||||
0%,
|
||||
100% {
|
||||
transform: translateY(0) translateX(0) rotate(0deg);
|
||||
}
|
||||
25% {
|
||||
transform: translateY(-15px) translateX(10px) rotate(1deg);
|
||||
}
|
||||
50% {
|
||||
transform: translateY(-30px) translateX(5px) rotate(0deg);
|
||||
}
|
||||
75% {
|
||||
transform: translateY(-15px) translateX(-10px) rotate(-1deg);
|
||||
}
|
||||
}
|
||||
.container .container-box {
|
||||
padding-top: 24px;
|
||||
height: 100vh;
|
||||
|
||||
@@ -43,61 +43,6 @@
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
|
||||
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
||||
min-height: 100vh;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bubble-tag {
|
||||
position: absolute;
|
||||
padding: 8px 18px;
|
||||
border-radius: 25px;
|
||||
background-color: rgba(255, 255, 255, 0.9);
|
||||
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
|
||||
font-size: 14px;
|
||||
cursor: pointer;
|
||||
transition: transform 0.3s ease;
|
||||
user-select: none;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
.bubble-tag:hover {
|
||||
transform: scale(1.15);
|
||||
z-index: 10;
|
||||
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
|
||||
}
|
||||
|
||||
/* 气泡浮动动画 */
|
||||
@keyframes float {
|
||||
0%,
|
||||
100% {
|
||||
transform: translateY(0) translateX(0) rotate(0deg);
|
||||
}
|
||||
25% {
|
||||
transform: translateY(-15px) translateX(10px) rotate(1deg);
|
||||
}
|
||||
50% {
|
||||
transform: translateY(-30px) translateX(5px) rotate(0deg);
|
||||
}
|
||||
75% {
|
||||
transform: translateY(-15px) translateX(-10px) rotate(-1deg);
|
||||
}
|
||||
}
|
||||
|
||||
// /* 呼吸效果动画 */
|
||||
// @keyframes pulse {
|
||||
// 0% {
|
||||
// opacity: 0.8;
|
||||
// box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
|
||||
// }
|
||||
// 100% {
|
||||
// opacity: 1;
|
||||
// box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
|
||||
// }
|
||||
// }
|
||||
|
||||
.container-box {
|
||||
padding-top: 24px;
|
||||
height: 100vh;
|
||||
|
||||
Reference in New Issue
Block a user