/* 首页样式 */ .joe_index { border-radius: var(--radius-wrap); padding: 0 15px; background: var(--background); box-shadow: var(--box-shadow); &__banner { padding-top: 15px; display: flex; &-recommend { width: 270px; margin-left: 15px; display: flex; flex-direction: column; &.noswiper { width: 100%; flex-direction: row; margin-left: 0; .item:first-child { margin-bottom: 0; margin-right: 7.5px; } .item:last-child { margin-left: 7.5px; } } .item { position: relative; width: 100%; height: 160px; margin-bottom: 15px; border-radius: var(--radius-inner); overflow: hidden; &:last-child { margin-bottom: 0; } .thumbnail { display: block; width: 100%; height: 100%; img { width: 100%; height: 100%; object-fit: cover; } } .information { display: flex; align-items: center; position: absolute; z-index: 1; bottom: 0; left: 0; right: 0; padding: 8px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5)); color: #fff; line-height: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; .type { background-image: linear-gradient(270deg, #986fee, #8695e6, #68b7dd, #18d7d3); background-color: #8695e6; text-align: center; padding: 0 8px; border-radius: 2px; height: 20px; font-size: 12px; color: #fff; z-index: 2; user-select: none; margin-right: 5px; } .text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } } } } } &__hot { padding-top: 15px; &-list { display: grid; grid-template-columns: repeat(4, 1fr); column-gap: 15px; .item { overflow: hidden; .link { display: block; .inner { position: relative; &:hover { .image { opacity: 0.85; } .title { background: var(--classC); } } .image { width: 100%; height: 120px; object-fit: cover; transition: opacity 0.35s; border-radius: var(--radius-inner) var(--radius-inner) 0 0; } .title { font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; text-align: center; padding: 0 8px; line-height: 32px; color: var(--minor); background: var(--classD); transition: background 0.35s; border-radius: 0 0 var(--radius-inner) var(--radius-inner); } .views { display: flex; align-items: center; position: absolute; z-index: 1; top: 5px; right: 5px; background-image: linear-gradient(to right, #fc712a, #f84c39); background-color: #f84c39; color: #fff; font-size: 12px; height: 18px; padding: 0 8px; border-radius: 2px; white-space: nowrap; } } } } } } &__ad { padding-top: 15px; &-link { display: block; position: relative; .image { width: 100%; height: 200px; object-fit: cover; border-radius: var(--radius-inner); transition: opacity 0.35s; &:hover { opacity: 0.85; } } .icon { position: absolute; z-index: 1; top: 10px; right: 10px; font-size: 12px; background: rgba(0, 0, 0, 0.25); padding: 2px 5px; border-radius: 2px; color: #ebebeb; pointer-events: none; } } } &__title { display: flex; align-items: center; border-bottom: 1px solid var(--classC); &-title { position: relative; display: flex; align-items: center; color: var(--routine); font-weight: 500; height: 40px; line-height: 40px; .item { cursor: pointer; margin-right: 20px; user-select: none; transition: color 0.35s; &.active { color: var(--theme); } } .line { position: absolute; bottom: -1px; left: 0; height: 2px; border-radius: 1px; background: var(--theme); transition: left 0.35s, width 0.35s; } } &-notice { display: flex; align-items: center; margin-left: auto; height: 40px; svg { min-width: 20px; min-height: 20px; width: 20px; height: 20px; margin-right: 5px; } a { color: var(--minor); line-height: 20px; max-width: 300px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: color 0.35s; &:hover { color: var(--theme); } } } } } .swiper-container { min-width: 0; flex: 1; height: 335px; --swiper-theme-color: #fff; border-radius: var(--radius-inner); .item { display: block; height: 335px; border-radius: var(--radius-inner); .thumbnail { width: 100%; height: 100%; object-fit: cover; transition: opacity 0.35s; &:hover { opacity: 0.85; } } .title { position: absolute; z-index: 1; left: 0; right: 0; bottom: 0; text-align: center; background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.45)); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #fff; font-size: 15px; padding: 10px; font-weight: normal; } .icon { position: absolute; z-index: 1; top: 10px; left: 10px; width: 18px; height: 18px; fill: #fff; opacity: 0.5; } } &.swiper-container-horizontal { .swiper-pagination-bullets { bottom: unset; left: unset; width: auto; right: 10px; top: 10px; } } &.swiper-container-vertical { .swiper-button-next, .swiper-button-prev { display: none; } } .swiper-button-next, .swiper-button-prev { background: rgba(0, 0, 0, 0.1); transition: background 0.35s, right 0.35s, left 0.35s; border-radius: 2px; &:hover { background: rgba(0, 0, 0, 0.25); } &::after { font-size: 20px; } } .swiper-button-next { right: -27px; } .swiper-button-prev { left: -27px; } &:hover { .swiper-button-next { right: 10px; } .swiper-button-prev { left: 10px; } } }