feat: enhance theme customizer with shadow options and update styles

- Added shadow customization options to the theme customizer, allowing users to select from 'none', 'low', 'medium', and 'high'.
- Updated the theme customizer settings interface and default values to include shadow settings.
- Enhanced the CSS variables for shadows in common.scss to support different shadow levels based on user selection.
- Modified the VirtualSlideView component styles to improve layout and scrolling behavior.
- Updated localization files for English, Simplified Chinese, and Traditional Chinese to include new shadow-related terms.
- Adjusted various components to ensure consistent application of shadow styles across the application.
This commit is contained in:
jxxghp
2026-06-04 21:20:08 +08:00
parent addc0838c0
commit 643ddcef07
9 changed files with 528 additions and 588 deletions

View File

@@ -140,7 +140,8 @@ function slideNext(next: boolean) {
if (!element) return
const visibleCount = Math.max(1, Math.trunc(element.clientWidth / itemStep.value))
const currentIndex = element.scrollLeft === 0 ? 0 : Math.trunc((element.scrollLeft + itemStep.value / 2) / itemStep.value)
const currentIndex =
element.scrollLeft === 0 ? 0 : Math.trunc((element.scrollLeft + itemStep.value / 2) / itemStep.value)
let targetLeft = 0
if (next) {
@@ -345,15 +346,15 @@ watch(
.slider-content-container {
position: relative;
overflow: hidden;
inline-size: 100%;
}
.slider-content {
overflow: scroll hidden !important;
margin-block-end: -8px;
-ms-overflow-style: none !important;
overflow: scroll visible;
overscroll-behavior-x: contain !important;
padding-block: 8px;
padding-block: 0 8px;
padding-inline: 12px;
scroll-behavior: smooth;
scrollbar-width: none !important;
@@ -380,6 +381,11 @@ watch(
flex: 0 0 auto;
}
.virtual-slide-item,
.loading-track > * {
padding-block-end: 12px;
}
.nav-button {
position: absolute;
z-index: 20;
@@ -399,8 +405,12 @@ watch(
pointer-events: none;
text-shadow: 0 1px 2px rgba(0, 0, 0, 10%);
transform: translateY(-50%);
transition: opacity 0.3s ease, transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), background-color 0.3s ease,
box-shadow 0.3s ease, border-color 0.3s ease;
transition:
opacity 0.3s ease,
transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
background-color 0.3s ease,
box-shadow 0.3s ease,
border-color 0.3s ease;
svg {
block-size: 22px;