fix:提交修改适配移动端

This commit is contained in:
ljy
2026-08-03 21:14:34 +08:00
parent 85bb826ca1
commit ee0c35cc34
4 changed files with 381 additions and 3 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 194 KiB

+371 -1
View File
@@ -1188,6 +1188,14 @@ blockquote cite {
font-weight: 800; font-weight: 800;
} }
.contact-phone {
display: inline-block;
text-decoration: none;
-webkit-tap-highlight-color: rgba(241, 217, 154, 0.35);
touch-action: manipulation;
cursor: pointer;
}
.qr-card { .qr-card {
display: grid; display: grid;
justify-items: center; justify-items: center;
@@ -2056,7 +2064,7 @@ blockquote cite {
.stage-dots { .stage-dots {
display: none; display: none;
} }
}\n }
/* ===== Viewport fit: lock each screen to 100vw x 100vh ===== */ /* ===== Viewport fit: lock each screen to 100vw x 100vh ===== */
.page-section { .page-section {
@@ -2796,3 +2804,365 @@ body.stage-mode {
transform: none !important; transform: none !important;
} }
} }
/* ===== Mobile (≤760px): each section = one screen; PC/stage unchanged ===== */
@media (max-width: 760px) {
.site:not(.is-stage) .page-section {
height: 100vh !important;
height: 100svh !important;
max-height: 100vh !important;
max-height: 100svh !important;
min-height: 100vh !important;
min-height: 100svh !important;
overflow-x: hidden !important;
overflow-y: auto !important;
align-content: center !important;
align-content: safe center !important;
justify-items: stretch !important;
align-items: stretch !important;
gap: 1.1rem !important;
padding: 5rem 1.15rem 2rem !important;
scroll-snap-align: start;
scroll-snap-stop: always;
-webkit-overflow-scrolling: touch;
}
.site:not(.is-stage) .page-section > *:not(.ink-cloud):not(.tech-orbit) {
min-height: 0;
max-width: 100%;
min-width: 0;
}
/* Wrap-friendly typography on narrow screens */
.site:not(.is-stage) .brand-main {
letter-spacing: 0.12em !important;
overflow-wrap: anywhere;
word-break: break-word;
}
.site:not(.is-stage) .brand-sub,
.site:not(.is-stage) .eyebrow {
letter-spacing: 0.16em !important;
white-space: normal !important;
overflow-wrap: anywhere;
}
.site:not(.is-stage) .hero-copy h1,
.site:not(.is-stage) .section-heading h2,
.site:not(.is-stage) .poetry-main-card h2,
.site:not(.is-stage) .craft-card h3 {
letter-spacing: 0.02em !important;
overflow-wrap: anywhere;
word-break: break-word;
line-height: 1.25 !important;
}
.site:not(.is-stage) .hero-text,
.site:not(.is-stage) .section-heading p,
.site:not(.is-stage) .poetry-main-card p,
.site:not(.is-stage) .lead,
.site:not(.is-stage) .closing-line,
.site:not(.is-stage) .closing-inline,
.site:not(.is-stage) .loop-line,
.site:not(.is-stage) .mode-line,
.site:not(.is-stage) .footnote,
.site:not(.is-stage) .dark-footnote,
.site:not(.is-stage) .mission-line,
.site:not(.is-stage) .product-tag,
.site:not(.is-stage) .contact-hint,
.site:not(.is-stage) .contact-role {
max-width: 100% !important;
white-space: normal !important;
overflow-wrap: anywhere;
word-break: break-word;
line-height: 1.6 !important;
}
.site:not(.is-stage) .section-heading,
.site:not(.is-stage) .hero-copy {
width: 100%;
max-width: 100%;
min-width: 0;
}
.site:not(.is-stage) .paper-card span,
.site:not(.is-stage) .three-columns span,
.site:not(.is-stage) .position-grid h3,
.site:not(.is-stage) .partner-list span {
letter-spacing: 0.08em !important;
white-space: normal !important;
overflow-wrap: anywhere;
}
.site:not(.is-stage) .data-band strong {
letter-spacing: 0.02em !important;
overflow-wrap: anywhere;
word-break: break-word;
}
.site:not(.is-stage) .data-band span,
.site:not(.is-stage) .data-band small,
.site:not(.is-stage) .paper-card p,
.site:not(.is-stage) .three-columns p,
.site:not(.is-stage) .tech-grid p,
.site:not(.is-stage) .ports-grid p,
.site:not(.is-stage) .system-grid p,
.site:not(.is-stage) .subsidy-points p,
.site:not(.is-stage) .partner-detail-grid p,
.site:not(.is-stage) .position-grid p {
white-space: normal !important;
overflow-wrap: anywhere;
word-break: break-word;
}
.site:not(.is-stage) .primary-button,
.site:not(.is-stage) .secondary-button,
.site:not(.is-stage) .nav-cta {
white-space: normal !important;
text-align: center;
line-height: 1.35;
}
/* Qingxiang: single column, spacing, no overlap */
.site:not(.is-stage) .qingxiang-section .feature-layout {
grid-template-columns: 1fr !important;
max-height: none !important;
gap: 1.5rem !important;
}
.site:not(.is-stage) .qingxiang-section .data-band {
grid-template-columns: 1fr !important;
gap: 0 !important;
}
.site:not(.is-stage) .qingxiang-section .data-band div {
padding: 1rem 0 !important;
border: none !important;
border-bottom: 1px solid rgba(167, 25, 34, 0.18) !important;
}
.site:not(.is-stage) .qingxiang-section .data-band div:last-child {
border-bottom: none !important;
}
.site:not(.is-stage) .qingxiang-section .data-band strong {
font-size: clamp(1.75rem, 8vw, 2.5rem) !important;
line-height: 1.15;
}
.site:not(.is-stage) .qingxiang-section .data-band span,
.site:not(.is-stage) .qingxiang-section .data-band small {
font-size: 0.8125rem !important;
line-height: 1.55 !important;
margin-top: 0.35rem;
}
.site:not(.is-stage) .qingxiang-section .section-heading p {
display: block !important;
-webkit-line-clamp: unset;
overflow: visible !important;
}
.site:not(.is-stage) .qingxiang-section .position-grid {
grid-template-columns: 1fr !important;
gap: 0.75rem !important;
margin-top: 0.25rem;
}
.site:not(.is-stage) .qingxiang-section .position-grid article {
min-height: 0 !important;
padding: 0.75rem 0 0.75rem 0.85rem !important;
}
.site:not(.is-stage) .qingxiang-section .position-grid h3 {
font-size: 1rem !important;
}
.site:not(.is-stage) .qingxiang-section .position-grid p {
font-size: 0.875rem !important;
line-height: 1.55 !important;
}
.site:not(.is-stage) .qingxiang-section .craft-card {
padding: 0 !important;
overflow: visible !important;
}
.site:not(.is-stage) .qingxiang-section .craft-card h3 {
font-size: 1.5rem !important;
}
.site:not(.is-stage) .qingxiang-section .craft-card > p:not(.craft-extra):not(.mission-line):not(.product-tag) {
display: block !important;
font-size: 0.875rem !important;
line-height: 1.6 !important;
-webkit-line-clamp: unset;
overflow: visible !important;
}
.site:not(.is-stage) .qingxiang-section .tasting-detail {
grid-template-columns: 1fr !important;
gap: 0 !important;
margin-top: 0.75rem !important;
}
.site:not(.is-stage) .qingxiang-section .tasting-detail div {
display: flex !important;
align-items: center;
gap: 0.75rem;
padding: 0.75rem 0 !important;
border: none !important;
border-bottom: 1px solid rgba(122, 75, 38, 0.14) !important;
}
.site:not(.is-stage) .qingxiang-section .tasting-detail div:last-child {
border-bottom: none !important;
}
.site:not(.is-stage) .qingxiang-section .tasting-detail strong {
width: 2.25rem !important;
height: 2.25rem !important;
margin: 0 !important;
flex-shrink: 0;
font-size: 1rem !important;
}
.site:not(.is-stage) .qingxiang-section .tasting-detail p,
.site:not(.is-stage) .qingxiang-section .mission-line,
.site:not(.is-stage) .qingxiang-section .product-tag {
font-size: 0.8125rem !important;
line-height: 1.5 !important;
}
.site:not(.is-stage) .qingxiang-section .store-figure,
.site:not(.is-stage) .qingxiang-section .footnote,
.site:not(.is-stage) .qingxiang-section .craft-extra,
.site:not(.is-stage) .qingxiang-section .ornament {
display: none !important;
}
/* Hero */
.site:not(.is-stage) .hero-section {
grid-template-columns: 1fr !important;
}
.site:not(.is-stage) .hero-visual {
height: auto !important;
max-height: none !important;
min-height: 16rem;
margin-block: 0.5rem 1rem;
}
.site:not(.is-stage) .hero-bottle {
height: min(42vh, 18rem) !important;
max-width: min(70vw, 14rem) !important;
}
.site:not(.is-stage) .hero-actions {
flex-direction: column;
align-items: stretch;
}
/* Brand / poetry / other grids */
.site:not(.is-stage) .brand-layout {
grid-template-columns: 1fr !important;
max-height: none !important;
}
.site:not(.is-stage) .heritage-figure {
display: none;
}
.site:not(.is-stage) .heritage-grid,
.site:not(.is-stage) .timeline,
.site:not(.is-stage) .three-columns,
.site:not(.is-stage) .tech-grid,
.site:not(.is-stage) .ports-grid,
.site:not(.is-stage) .system-grid,
.site:not(.is-stage) .subsidy-points,
.site:not(.is-stage) .partner-detail-grid,
.site:not(.is-stage) .partner-list,
.site:not(.is-stage) .data-band {
grid-template-columns: 1fr !important;
}
.site:not(.is-stage) .feature-layout {
max-height: none !important;
grid-template-columns: 1fr !important;
}
.site:not(.is-stage) .paper-card,
.site:not(.is-stage) .three-columns article,
.site:not(.is-stage) .tech-grid article,
.site:not(.is-stage) .ports-grid article,
.site:not(.is-stage) .partner-detail-grid article,
.site:not(.is-stage) .system-grid article,
.site:not(.is-stage) .subsidy-points article {
overflow: visible !important;
min-height: 0 !important;
}
.site:not(.is-stage) .paper-card p,
.site:not(.is-stage) .three-columns p,
.site:not(.is-stage) .tech-grid p,
.site:not(.is-stage) .ports-grid p,
.site:not(.is-stage) .partner-detail-grid p,
.site:not(.is-stage) .subsidy-points p,
.site:not(.is-stage) .system-grid p {
display: block !important;
-webkit-line-clamp: unset;
overflow: visible !important;
font-size: 0.875rem !important;
line-height: 1.55 !important;
}
.site:not(.is-stage) .poetry-section {
grid-template-columns: 1fr !important;
}
.site:not(.is-stage) .poetry-tags {
display: none;
}
.site:not(.is-stage) .contact-section {
grid-template-columns: 1fr !important;
}
.site:not(.is-stage) .contact-person {
flex-direction: column;
align-items: flex-start;
gap: 0.5rem;
}
.site:not(.is-stage) .contact-phone {
padding: 0.35rem 0;
border-bottom: 1px solid rgba(241, 217, 154, 0.45);
color: var(--gold-light);
font-size: clamp(1.35rem, 6vw, 1.85rem) !important;
letter-spacing: 0.04em;
pointer-events: auto;
position: relative;
z-index: 2;
}
.site:not(.is-stage) .qr-card {
margin-block: 1rem !important;
padding: 1.75rem 1.25rem !important;
width: 100%;
max-width: 20rem;
justify-self: center;
}
.site:not(.is-stage) .qr-card img {
width: min(70vw, 14rem) !important;
height: min(70vw, 14rem) !important;
}
.site:not(.is-stage) .footer.in-section {
margin-top: 1.5rem;
}
.site:not(.is-stage) .subsidy-number {
font-size: clamp(4rem, 22vw, 7rem) !important;
}
}
+4 -2
View File
@@ -527,11 +527,13 @@ function App() {
<p className="contact-role"> · </p> <p className="contact-role"> · </p>
<div className="contact-person"> <div className="contact-person">
<strong></strong> <strong></strong>
<a href="tel:13073729990">13073729990</a> <a className="contact-phone" href="tel:+8613073729990" aria-label="拨打吕丹电话 13073729990">
13073729990
</a>
</div> </div>
</div> </div>
<div className="qr-card"> <div className="qr-card">
<img src="/assets/qr-contact.svg" alt="微信二维码占位图" /> <img src="/assets/qr-contact.png" alt="项目负责人微信二维码" />
<span></span> <span></span>
</div> </div>
<footer className="footer in-section"> <footer className="footer in-section">
+6
View File
@@ -58,6 +58,12 @@ html:has(body.stage-mode) {
height: 100%; height: 100%;
} }
@media (max-width: 760px) {
html {
scroll-snap-type: y proximity;
}
}
button, button,
input, input,
textarea, textarea,