Fix mobile nav/TOC/overflow on article pages + harden membership form
Mobile fixes (article, guide, get-to-know, projects pages): - Remove duplicate main.js include site-wide. footer.js emitted a <script src=main.js> inside the footer block while pages also load one before </body>, so DOMContentLoaded ran twice and every tap toggled the mobile menu / article TOC twice (net no-op). Menu and TOC only worked on the homepage. Now exactly one main.js per page, before </body>. - Kill horizontal overflow: add overflow-x: clip to html/body (clips the off-canvas mobile nav panel without breaking position: sticky, unlike overflow-x: hidden). - Reset align-items to stretch in the mobile .article-layout-container rule; the desktop flex-start made .article-container size to max-content width in a column flexbox and overflow the viewport. Membership form hardening (Become a Member): - Honeypot field + localStorage cooldown (30s gap, max 3/24h) + stronger email regex; trilingual cooldown alert message. - Apps Script (setup doc): per-email auto-reply dedupe + daily send cap; applicant reply is a plain thank-you that never echoes submitted answers. - Draft HTML welcome email (email-welcome-preview.html) for later use. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
7bc249e8a4
commit
efb3c6ea39
196 files changed
+83
-203
No files matched your search
+8
-6
@@ -23,19 +23,21 @@
|
||||
|
||||
html {
|
||||
/*
|
||||
* POMEMBNO: Ta selektor naj ostane brez `overflow` pravil.
|
||||
* `overflow-x: hidden` na `<html>` ali `<body>` elementu preprečuje
|
||||
* pravilno delovanje `position: sticky`, ki ga uporablja stranska
|
||||
* vrstica v člankih.
|
||||
* `overflow-x: hidden` na `<html>`/`<body>` bi pokvaril `position: sticky`
|
||||
* (stranska vrstica in mobilni TOC v člankih). Zato uporabljamo
|
||||
* `overflow-x: clip`, ki obreže vodoravni preliv (npr. mobilni meni,
|
||||
* ki je zunaj zaslona), NE da bi ustvaril drsni vsebnik, zato `sticky`
|
||||
* še vedno deluje.
|
||||
*/
|
||||
overflow-x: clip;
|
||||
}
|
||||
|
||||
|
||||
body {
|
||||
font-family: 'Inter', sans-serif;
|
||||
margin: 0;
|
||||
background-color: #FFFFFF;
|
||||
color: #101828;
|
||||
/* `overflow-x: hidden;` je bil odstranjen, da omogoči pravilno delovanje `position: sticky`. */
|
||||
overflow-x: clip;
|
||||
}
|
||||
|
||||
/* Pravilo za preprečevanje drsenja, ko je mobilni meni odprt. To je pravilno in ostane. */
|
||||
|
||||
Reference in new issue
Block a user