全新popiart网站 react项目重构
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

163 lines
3.7 KiB

.explorePage {
height: 100%;
background: #f2f2f2;
box-sizing: border-box;
padding: 0 0 200px 110px;
overflow-y: scroll;
scrollbar-width: none;
will-change: transform; // 提示浏览器优化滚动容器
// 可选:配合 contain 进一步优化
contain: layout style paint;
.explorePage__feed {
box-sizing: border-box;
width: min(100%, 1623px);
margin: 34px 0 0;
padding: 0 0 clamp(32px, 3vw, 48px);
.explorePage__feedTabs {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 20px;
.sectionPill {
cursor: pointer;
}
}
.explorePage__feedTabPanels {
width: 100%;
}
.explorePage__feedPanel {
box-sizing: border-box;
.explorePage__feedError {
margin: 0 0 12px;
padding: 10px 12px;
border-radius: 9px;
background: rgba(255, 77, 79, 0.08);
font-size: 14px;
font-weight: 400;
line-height: 22px;
color: #d4380d;
}
.explorePage__feedLoading {
margin: 16px 0 0;
text-align: center;
font-size: 14px;
font-weight: 400;
line-height: 26px;
color: #999999;
}
.explorePage__feedLoading.explorePage__feedLoading--more {
margin-top: 12px;
}
.explorePage__feedGrid {
display: grid;
grid-template-columns: repeat(6, minmax(0, 1fr));
column-gap: 15px;
row-gap: 15px;
align-items: start;
justify-items: center;
@media (max-width: 1680px) {
grid-template-columns: repeat(5, minmax(0, 1fr));
}
@media (max-width: 1360px) {
grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1080px) {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 720px) {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
@media (max-width: 400px) {
grid-template-columns: minmax(0, 1fr);
}
}
.explorePage__feedSkeletonBlock {
display: block;
background: linear-gradient(90deg, rgba(0, 0, 0, 0.07) 25%, rgba(0, 0, 0, 0.12) 37%, rgba(0, 0, 0, 0.07) 63%);
background-size: 400% 100%;
animation: explorePageSkeletonShimmer 1.5s cubic-bezier(0, 0, 1, 1) infinite;
}
.explorePage__feedSkeletonBlock--media {
width: 100%;
height: 100%;
border-radius: 24px;
}
.explorePage__feedSkeletonBlock--avatar {
width: 37px;
height: 37px;
flex: 0 0 37px;
border-radius: 50%;
background: linear-gradient(90deg, rgba(255, 255, 255, 0.72) 25%, rgba(255, 255, 255, 0.94) 37%, rgba(255, 255, 255, 0.72) 63%);
background-size: 400% 100%;
}
.explorePage__feedSkeletonBlock--statIcon {
width: 15px;
height: 15px;
flex: 0 0 15px;
border-radius: 50%;
}
.explorePage__feedSkeletonBlock--text {
height: 12px;
min-width: 0;
border-radius: 999px;
}
.explorePage__feedSentinel {
width: 100%;
height: 1px;
pointer-events: none;
}
}
}
@media (max-width: 1720px) {
padding-right: 24px;
}
@media (max-width: 1280px) {
padding-left: 24px;
}
@media (max-width: 720px) {
padding-right: 14px;
padding-left: 14px;
.explorePage__feed {
margin-top: 24px;
.explorePage__feedTabs {
overflow-x: auto;
scrollbar-width: none;
}
}
}
}
@keyframes explorePageSkeletonShimmer {
0% {
background-position: 100% 50%;
}
100% {
background-position: 0 50%;
}
}