/* ==========================网页主体========================= */ * { padding: 0; margin: 0; -webkit-user-select: none; /* Safari 和 Chrome */ -moz-user-select: none; /* Firefox */ -ms-user-select: none; /* Internet Explorer/Edge */ user-select: none; /* 标准语法 */ } .shell { width: 100%; position: relative; padding: 80px 0; transition: 0.3s ease 0s; background-attachment: fixed; background-size: cover; } .shell:before { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(99, 99, 99, 0.8); content: ""; } .header { width: 100%; text-align: center; margin-bottom: 80px; position: relative; } .title { color: #fff; font-size: 46px; font-weight: normal; margin: 0; } .timeline { display: flex; margin: 0 auto; flex-wrap: wrap; flex-direction: column; max-width: 700px; position: relative; } .content-title { font-weight: normal; font-size: 66px; margin: -10px 0 0 0; transition: 0.4s; padding: 0 10px; box-sizing: border-box; color: #fff; } .content-desc { margin: 0; font-size: 15px; box-sizing: border-box; color: rgba(255, 255, 255, 0.7); line-height: 25px; } .timeline:before { position: absolute; left: 50%; width: 2px; height: 100%; margin-left: -1px; content: ""; background: rgba(255, 255, 255, 0.07); } .item { padding: 40px 0; opacity: 0.3; filter: blur(2px); transition: 0.5s; box-sizing: border-box; width: calc(50% - 40px); display: flex; position: relative; transform: translateY(-80px); /* 元素之间的距离 */ margin-bottom: 200px; } /* 伪元素样式 */ .item:before { content: attr(data-text); letter-spacing: 3px; width: 100%; position: absolute; color: rgba(255, 255, 255, 0.5); font-size: 13px; border-left: 2px solid rgba(255, 255, 255, 0.5); top: 70%; margin-top: -5px; padding-left: 15px; opacity: 0; right: calc(-100% - 56px); font: 900 20px ''; letter-spacing: 5px; } .item:nth-child(even) { align-self: flex-end; } /* 改变伪元素的产生位置,对称产生 */ .item:nth-child(even):before { right: auto; text-align: right; left: calc(-100% - 56px); padding-left: 0; border-left: none; border-right: 2px solid rgba(255, 255, 255, 0.5); padding-right: 15px; } /* 滚动到对应元素的位置 */ .item--active { opacity: 1; /* transform: translateY(0); */ filter: blur(0px); } /* 激活状态鼠标悬浮变化 */ .item--active:hover { width: 360px; } /* 图片旁边的伪元素文字 */ .item--active:before { top: 70%; transition: 0.3s all 0.2s; opacity: 1; } .item--active .content-title { margin: -50px 0 20px 0; } .img { max-width: 100%; box-shadow: 0 10px 15px rgba(0, 0, 0, 0.4); } .subtitle { color: rgba(255, 255, 255, 0.5); font-size: 16px; letter-spacing: 5px; margin: 10px 0 0 0; font-weight: normal; } .footer { padding: 95px 0; text-align: center; } .footer a { color: #999; display: inline-block; } @media only screen and (max-width: 767px) { .item { align-self: baseline !important; width: 100%; padding: 0 30px 150px 80px; } .item:before { left: 10px !important; padding: 0 !important; top: 50px; text-align: center !important; width: 60px; border: none !important; } .item:last-child { padding-bottom: 40px; } } @media only screen and (max-width: 767px) { .timeline:before { left: 40px; } } /* ==================日志============ */ /* 功能区大盒子 */ .buttons-container { position: fixed; top: 20px; left: 20px; display: flex; align-items: center; z-index: 8888; } /* 更新日志按钮 */ .changelog-button { width: 40px; height: 40px; background-color: rgba(255, 255, 255, 0.5); border-radius: 5%; display: flex; justify-content: center; align-items: center; cursor: pointer; } .changelog-button:hover { background-color: #e5e2e2; } .changelog-icon { width: 24px; height: 24px; background-image: url("./img/log_icon.png"); /* 替换为你的更新日志图标的路径 */ background-size: cover; } /* 日志弹窗样式 */ .changelog-modal { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 60%; height: 70%; background-color: rgba(8, 8, 8, 0.9); /* 淡红色背景 */ z-index: 9999; overflow: auto; border-radius: 1%; } .changelog-content #logtitle { text-align: center; font-size: 20px; margin-bottom: 30px; } .changelog-content #groupdescribe { text-align: center; font-size: 15px; font-weight: 400; color: rgb(188, 230, 96); } .changelog-content #logtext { text-align: left; font-size: 15px; } .changelog-content { /* 公告文字颜色 */ color: rgb(188, 230, 96); /* 白色文字 */ padding: 20px; border-radius: 10px; margin: 20px; font-size: 16px; line-height: 1.5; } .fade-in { animation: fade-in 0.5s ease-in-out forwards; } .fade-out { animation: fade-out 0.5s ease-in-out forwards; } @keyframes fade-in { from { opacity: 0; } to { opacity: 1; } } @keyframes fade-out { from { opacity: 1; } to { opacity: 0; } } @media (max-width: 768px) { /* 小屏幕设备的日志弹窗样式 */ #changelog-modal { width: 90%; height: 70%; } .changelog-content #logtitle { text-align: center; font-size: 15px; margin-bottom: 30px; } .changelog-content #groupdescribe { text-align: center; font-size: 10px; font-weight: 400; color: rgb(230, 216, 29) } .changelog-content #logtext { text-align: left; font-size: 10px; } }