简化播放按钮的样式实现,移除冗余的伪元素,改用box-shadow实现边框效果 统一标签的圆角半径和背景色,移除注释掉的代码 调整播放按钮点击逻辑,当playurl不存在时自动获取播放链接
466 lines
12 KiB
Plaintext
466 lines
12 KiB
Plaintext
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.container {
|
|
width: 100%;
|
|
background-color: rgba(51, 51, 51, 1);
|
|
|
|
.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;
|
|
}
|
|
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
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;
|
|
display: flex;
|
|
flex-direction: column;
|
|
|
|
.logo {
|
|
width: 121px;
|
|
height: 24px;
|
|
margin-bottom: 31px;
|
|
}
|
|
|
|
.header {
|
|
position: relative;
|
|
width: 1200px;
|
|
height: 320px;
|
|
// background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 100%);
|
|
border-radius: 20px;
|
|
margin-bottom: 20px;
|
|
|
|
&::after {
|
|
content: "";
|
|
width: 1200px;
|
|
height: 320px;
|
|
background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 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: 46px;
|
|
left: 51px;
|
|
width: 186px;
|
|
height: 160px;
|
|
transform: rotate(315deg);
|
|
top: 137px;
|
|
left: -10px;
|
|
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: 320px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.love-big {
|
|
transform: rotate(44deg);
|
|
width: 321px;
|
|
height: 276px;
|
|
position: absolute;
|
|
top: 31px;
|
|
left: 69px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.music-score {
|
|
width: 240px;
|
|
height: 240px;
|
|
position: absolute;
|
|
top: 1px;
|
|
left: 217px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.robot {
|
|
width: 238px;
|
|
height: 238px;
|
|
position: absolute;
|
|
top: 42px;
|
|
left: 432px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.text {
|
|
width: 224px;
|
|
height: 194px;
|
|
position: absolute;
|
|
top: 68px;
|
|
left: 694px;
|
|
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: 953px;
|
|
top: 70px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.ai-music {
|
|
width: 81px;
|
|
height: 28px;
|
|
position: absolute;
|
|
top: 282px;
|
|
left: 1106px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.record-black {
|
|
width: 223px;
|
|
height: 233px;
|
|
position: absolute;
|
|
bottom: 0;
|
|
right: -1px;
|
|
z-index: 1;
|
|
}
|
|
|
|
.record-circle {
|
|
position: absolute;
|
|
top: 147px;
|
|
left: 1039px;
|
|
background-color: rgb(114, 219, 134);
|
|
width: 110px;
|
|
height: 110px;
|
|
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: 285px;
|
|
left: 217px;
|
|
}
|
|
|
|
.shadow {
|
|
width: 240px;
|
|
height: 165px;
|
|
position: absolute;
|
|
top: 191px;
|
|
left: 997px;
|
|
}
|
|
}
|
|
|
|
.list-box {
|
|
width: 1200px;
|
|
height: 100%;
|
|
background-color: rgba(255, 255, 255, 0.109803921568627);
|
|
border-radius: 20px;
|
|
position: relative;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
padding: 3px 0;
|
|
margin-bottom: 40px;
|
|
flex: 1;
|
|
z-index: 1;
|
|
|
|
.left-icon {
|
|
width: 121px;
|
|
height: 144px;
|
|
position: absolute;
|
|
top: 61px;
|
|
left: 0;
|
|
z-index: 1;
|
|
}
|
|
|
|
.right-icon {
|
|
width: 57px;
|
|
height: 84px;
|
|
position: absolute;
|
|
top: 20px;
|
|
left: 1120px;
|
|
z-index: 1;
|
|
transform: rotate(15deg);
|
|
}
|
|
|
|
.list {
|
|
z-index: 100;
|
|
// background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 100%);
|
|
}
|
|
|
|
.list-fill {
|
|
.fill-item {
|
|
width: 33px;
|
|
height: 23px;
|
|
border-radius: 100px;
|
|
// background-color: rgba(255, 255, 255, 0.223529);
|
|
position: absolute;
|
|
cursor: pointer;
|
|
box-shadow: 0px 0 0 3px rgba(255, 255, 255, 0.223529);
|
|
background: rgba(255, 255, 255, 0.5);
|
|
|
|
// &::after {
|
|
// content: "";
|
|
// width: calc(100% - 6px);
|
|
// height: calc(100% - 6px);
|
|
// background: rgba(255, 255, 255, 0.5);
|
|
// position: absolute;
|
|
// top: 50%;
|
|
// left: 50%;
|
|
// transform: translate(-50%, -50%);
|
|
// border-radius: 100px;
|
|
// z-index: -1;
|
|
// }
|
|
|
|
&.item2 {
|
|
width: 48px;
|
|
height: 28px;
|
|
}
|
|
|
|
&.item3 {
|
|
width: 63px;
|
|
height: 33px;
|
|
}
|
|
|
|
&.item4 {
|
|
width: 78px;
|
|
height: 38px;
|
|
}
|
|
|
|
&.item5 {
|
|
width: 93px;
|
|
height: 43px;
|
|
}
|
|
}
|
|
}
|
|
|
|
.list,
|
|
.list-fill {
|
|
width: 1194px;
|
|
height: 100%;
|
|
border-radius: 18px;
|
|
position: absolute !important;
|
|
}
|
|
|
|
&::after {
|
|
content: "";
|
|
position: absolute;
|
|
top: 50%;
|
|
left: 50%;
|
|
transform: translate(-50%, -50%);
|
|
width: calc(100% - 6px);
|
|
height: calc(100% - 6px);
|
|
background: linear-gradient(180deg, #7d4bf8 0%, #5241b0 100%);
|
|
z-index: -1;
|
|
border-radius: 18px;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.tag-item {
|
|
height: 60px;
|
|
line-height: 60px;
|
|
border-radius: 30px;
|
|
background: #d5e7f7;
|
|
position: absolute;
|
|
font-size: 20px !important;
|
|
color: #1c3e5e;
|
|
padding: 0 25px;
|
|
width: fit-content;
|
|
cursor: pointer;
|
|
box-shadow: 0px 0 0 3px rgba(255, 255, 255, 0.223529);
|
|
opacity: 1 !important;
|
|
|
|
&:hover {
|
|
font-weight: 650;
|
|
color: rgb(88, 58, 5) !important;
|
|
background-color: rgba(241, 154, 4, 1) !important;
|
|
}
|
|
|
|
&.item2 {
|
|
height: 50px;
|
|
line-height: 50px;
|
|
border-radius: 25px;
|
|
color: #1c3e5e;
|
|
padding: 0 20px;
|
|
font-size: 18px !important;
|
|
background: #d5e7f7;
|
|
}
|
|
|
|
&.item3 {
|
|
height: 47px;
|
|
line-height: 47px;
|
|
border-radius: 25px;
|
|
color: #1c3e5e;
|
|
padding: 0 16px;
|
|
font-size: 16px !important;
|
|
background: #d5e7f7;
|
|
}
|
|
|
|
&.item4 {
|
|
height: 30px;
|
|
line-height: 30px;
|
|
border-radius: 30px;
|
|
color: #1c3e5e;
|
|
padding: 0 10px;
|
|
font-size: 14px !important;
|
|
background: #d5e7f7;
|
|
}
|
|
|
|
&.red {
|
|
color: #62263c !important;
|
|
background: linear-gradient(180deg, #ff8eba 0%, #f4458c 100%);
|
|
}
|
|
}
|