- 重构标签HTML结构,添加.tag-text容器 - 为当前播放标签添加旋转渐变边框效果 - 调整标签尺寸和内边距 - 添加控制台日志输出当前播放数据 - 更新VSCode端口配置
567 lines
11 KiB
CSS
567 lines
11 KiB
CSS
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
font-family: "PingFangSC-Regular", "PingFang SC", sans-serif;
|
|
}
|
|
.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 * {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
.container .container-box {
|
|
padding-top: 24px;
|
|
height: 100vh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
}
|
|
.container .container-box .logo {
|
|
width: 121px;
|
|
height: 24px;
|
|
margin-bottom: 31px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header {
|
|
position: relative;
|
|
width: 1200px;
|
|
height: 320px;
|
|
border-radius: 20px;
|
|
margin-bottom: 20px;
|
|
}
|
|
.container .container-box .header::after {
|
|
content: "";
|
|
width: 1200px;
|
|
height: 320px;
|
|
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: 46px;
|
|
left: 51px;
|
|
width: 186px;
|
|
height: 160px;
|
|
transform: rotate(315deg);
|
|
top: 137px;
|
|
left: -10px;
|
|
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: 320px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .love-big {
|
|
transform: rotate(44deg);
|
|
width: 321px;
|
|
height: 276px;
|
|
position: absolute;
|
|
top: 31px;
|
|
left: 69px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .music-score {
|
|
width: 240px;
|
|
height: 240px;
|
|
position: absolute;
|
|
top: 1px;
|
|
left: 217px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .robot {
|
|
width: 238px;
|
|
height: 238px;
|
|
position: absolute;
|
|
top: 42px;
|
|
left: 432px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .text {
|
|
width: 224px;
|
|
height: 194px;
|
|
position: absolute;
|
|
top: 68px;
|
|
left: 694px;
|
|
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: 953px;
|
|
top: 70px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .ai-music {
|
|
width: 81px;
|
|
height: 28px;
|
|
position: absolute;
|
|
top: 282px;
|
|
left: 1106px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .record-black {
|
|
width: 223px;
|
|
height: 233px;
|
|
position: absolute;
|
|
bottom: 0;
|
|
right: -1px;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .header .record-circle {
|
|
position: absolute;
|
|
top: 147px;
|
|
left: 1039px;
|
|
background-color: #72db86;
|
|
width: 110px;
|
|
height: 110px;
|
|
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: 285px;
|
|
left: 217px;
|
|
}
|
|
.container .container-box .header .shadow {
|
|
width: 240px;
|
|
height: 165px;
|
|
position: absolute;
|
|
top: 191px;
|
|
left: 997px;
|
|
}
|
|
.container .container-box .list-box {
|
|
width: 1200px;
|
|
height: 100%;
|
|
background-color: rgba(255, 255, 255, 0.10980392);
|
|
border-radius: 20px;
|
|
position: relative;
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
padding: 3px 0;
|
|
margin-bottom: 40px;
|
|
flex: 1;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .list-box .left-icon {
|
|
width: 121px;
|
|
height: 144px;
|
|
position: absolute;
|
|
top: 61px;
|
|
left: 0;
|
|
z-index: 1;
|
|
}
|
|
.container .container-box .list-box .right-icon {
|
|
width: 57px;
|
|
height: 84px;
|
|
position: absolute;
|
|
top: 20px;
|
|
left: 1120px;
|
|
z-index: 1;
|
|
transform: rotate(15deg);
|
|
}
|
|
.container .container-box .list-box .list {
|
|
z-index: 100;
|
|
}
|
|
.container .container-box .list-box .list-fill .fill-item {
|
|
width: 33px;
|
|
height: 23px;
|
|
border-radius: 12px;
|
|
position: absolute;
|
|
cursor: pointer;
|
|
box-shadow: 0px 0 0 3px rgba(255, 255, 255, 0.223529);
|
|
background: rgba(255, 255, 255, 0.5);
|
|
}
|
|
.container .container-box .list-box .list-fill .fill-item.item2 {
|
|
width: 48px;
|
|
height: 28px;
|
|
}
|
|
.container .container-box .list-box .list-fill .fill-item.item3 {
|
|
width: 63px;
|
|
height: 33px;
|
|
}
|
|
.container .container-box .list-box .list-fill .fill-item.item4 {
|
|
width: 78px;
|
|
height: 38px;
|
|
}
|
|
.container .container-box .list-box .list-fill .fill-item.item5 {
|
|
width: 93px;
|
|
height: 43px;
|
|
}
|
|
.container .container-box .list-box .list,
|
|
.container .container-box .list-box .list-fill {
|
|
width: 1194px;
|
|
height: 100%;
|
|
border-radius: 18px;
|
|
position: absolute !important;
|
|
}
|
|
.container .container-box .list-box::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: 66px;
|
|
border-radius: 12px;
|
|
position: absolute;
|
|
font-size: 20px !important;
|
|
color: #1c3e5e;
|
|
width: fit-content;
|
|
cursor: pointer;
|
|
background: rgba(255, 255, 255, 0.223529);
|
|
opacity: 1 !important;
|
|
padding: 3px;
|
|
}
|
|
.tag-item.show::after {
|
|
content: "";
|
|
width: 100%;
|
|
height: 100%;
|
|
position: absolute;
|
|
left: 50%;
|
|
top: 50%;
|
|
transform: translate(-50%, -50%);
|
|
border-radius: 12px;
|
|
background: linear-gradient(var(--rotate), #db4743, #ffffff 43%, #c28846);
|
|
animation: bg 1.3s infinite linear;
|
|
}
|
|
@property --rotate {
|
|
syntax: "<angle>";
|
|
initial-value: 0deg;
|
|
inherits: false;
|
|
}
|
|
@keyframes bg {
|
|
0% {
|
|
--rotate: 0deg;
|
|
}
|
|
100% {
|
|
--rotate: 360deg;
|
|
}
|
|
}
|
|
.tag-item .tag-text {
|
|
background: #d5e7f7;
|
|
padding: 0 25px;
|
|
border-radius: 10px;
|
|
height: 100%;
|
|
display: flex;
|
|
align-items: center;
|
|
transition: background 0.3s, color 0.3s, z-index 0.3s, font-weight 0.3s;
|
|
position: relative;
|
|
z-index: 1;
|
|
}
|
|
.tag-item:hover {
|
|
font-weight: 650;
|
|
color: #583a05 !important;
|
|
z-index: 100 !important;
|
|
}
|
|
.tag-item:hover .tag-text {
|
|
background: #f19a04 !important;
|
|
}
|
|
.tag-item.item2 {
|
|
height: 56px;
|
|
color: #1c3e5e;
|
|
font-size: 18px !important;
|
|
}
|
|
.tag-item.item2 .tag-text {
|
|
padding: 0 20px;
|
|
background: #d5e7f7;
|
|
}
|
|
.tag-item.item3 {
|
|
height: 53px;
|
|
color: #1c3e5e;
|
|
font-size: 16px !important;
|
|
}
|
|
.tag-item.item3 .tag-text {
|
|
padding: 0 16px;
|
|
background: #d5e7f7;
|
|
}
|
|
.tag-item.item4 {
|
|
height: 36px;
|
|
color: #1c3e5e;
|
|
font-size: 14px !important;
|
|
}
|
|
.tag-item.item4 .tag-text {
|
|
padding: 0 10px;
|
|
background: #d5e7f7;
|
|
}
|
|
.tag-item.red .tag-text {
|
|
color: #62263c !important;
|
|
background: linear-gradient(180deg, #ff8eba 0%, #f4458c 100%);
|
|
}
|
|
.bottom-play {
|
|
position: fixed;
|
|
bottom: 10px;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
border-radius: 12px;
|
|
width: 100%;
|
|
padding: 12px 0;
|
|
background-color: #000;
|
|
z-index: 1000;
|
|
justify-content: space-between;
|
|
align-items: flex-end;
|
|
animation: fadeInUp 0.3s ease forwards;
|
|
width: 800px;
|
|
}
|
|
@keyframes fadeInUp {
|
|
0% {
|
|
bottom: -76px;
|
|
}
|
|
100% {
|
|
bottom: 10px;
|
|
}
|
|
}
|
|
.bottom-play .bottom-left {
|
|
padding-left: 12px;
|
|
height: 24px;
|
|
line-height: 24px;
|
|
position: relative;
|
|
}
|
|
.bottom-play .bottom-left .img {
|
|
width: 56px;
|
|
height: 56px;
|
|
margin-right: 12px;
|
|
}
|
|
.bottom-play .bottom-left .name {
|
|
color: #fff;
|
|
font-size: 14px;
|
|
max-width: 300px;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
position: absolute;
|
|
left: 12px;
|
|
bottom: 0;
|
|
}
|
|
.bottom-play .bottom-middle {
|
|
flex-direction: column;
|
|
}
|
|
.bottom-play .bottom-middle .operate {
|
|
height: 24px;
|
|
}
|
|
.bottom-play .bottom-middle .operate .cut {
|
|
width: 14px;
|
|
height: 12px;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-middle .operate .speed {
|
|
width: 16px;
|
|
height: 12px;
|
|
margin: 0 40px;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-middle .operate .play {
|
|
width: 24px;
|
|
height: 24px;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-middle .time-display {
|
|
color: #fff;
|
|
font-size: 12px;
|
|
line-height: 10px;
|
|
}
|
|
.bottom-play .bottom-middle .progress-bar {
|
|
height: 10px;
|
|
width: 500px;
|
|
margin: 0 10px;
|
|
}
|
|
.bottom-play .bottom-middle .progress-bar .bar {
|
|
height: 4px;
|
|
background-color: #ffffff;
|
|
border-radius: 10px;
|
|
position: relative;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-middle .progress-bar .bar.white {
|
|
width: 0;
|
|
border-radius: 10px 0 0 10px;
|
|
background-color: #5241b0;
|
|
}
|
|
.bottom-play .bottom-middle .progress-bar .bar.white::before {
|
|
content: "";
|
|
width: 10px;
|
|
height: 10px;
|
|
background-color: #f3974b;
|
|
border-radius: 50%;
|
|
position: absolute;
|
|
top: 50%;
|
|
transform: translateY(-50%);
|
|
right: -5px;
|
|
cursor: pointer;
|
|
z-index: 1;
|
|
display: block;
|
|
}
|
|
.bottom-play .bottom-middle .progress-bar .bar.black {
|
|
background-color: #f2f2f2;
|
|
border-radius: 0 10px 10px 0;
|
|
}
|
|
.bottom-play .bottom-right {
|
|
justify-content: flex-end;
|
|
padding-right: 12px;
|
|
height: 24px;
|
|
}
|
|
.bottom-play .bottom-right .item {
|
|
position: relative;
|
|
margin-right: 18px;
|
|
}
|
|
.bottom-play .bottom-right .item .svg {
|
|
display: block;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control {
|
|
justify-content: center;
|
|
left: 50%;
|
|
transform: translateX(-50%);
|
|
height: 151px;
|
|
padding-bottom: 2px;
|
|
position: absolute;
|
|
top: -158px;
|
|
width: 42px;
|
|
align-items: center;
|
|
background: #1f1f1f;
|
|
border-radius: 8px;
|
|
flex-direction: column;
|
|
justify-content: space-between;
|
|
padding: 12px;
|
|
cursor: auto;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control::after {
|
|
content: "";
|
|
width: 100%;
|
|
height: 7px;
|
|
position: absolute;
|
|
bottom: -7px;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control .value {
|
|
color: #fff;
|
|
font-size: 14px;
|
|
user-select: none;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control .progress {
|
|
width: 4px;
|
|
height: 100px;
|
|
border-radius: 4px;
|
|
background-color: rgba(255, 255, 255, 0.2);
|
|
flex-direction: column;
|
|
justify-content: flex-end;
|
|
cursor: pointer;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control .progress .bar {
|
|
width: 100%;
|
|
height: 50px;
|
|
background-color: #fff;
|
|
border-radius: 4px;
|
|
position: relative;
|
|
}
|
|
.bottom-play .bottom-right .item .sound-control .progress .bar::before {
|
|
content: "";
|
|
width: 10px;
|
|
height: 10px;
|
|
background-color: #f3974b;
|
|
border-radius: 50%;
|
|
position: absolute;
|
|
top: 0;
|
|
transform: translate(-50%, -50%);
|
|
left: 50%;
|
|
z-index: 1;
|
|
display: block;
|
|
}
|