Feat: footer reveal — page-scrollable-footer intégré aux vues
All checks were successful
Deploy / Deploy to Production (push) Successful in 25s

- Footer renommé page-scrollable-footer, positionné en dernier enfant
  de .page-container dans About, Blog et Article
- Marges négatives pour aligner le footer pleine largeur (about / blog)
- Retrait du footer global fixe de App.svelte

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
isUnknown 2026-03-18 12:14:59 +01:00
parent 4d425dd126
commit c6fa61c77b
6 changed files with 18 additions and 17 deletions

View file

@ -7,7 +7,6 @@
import Cursor from '@components/layout/Cursor.svelte' import Cursor from '@components/layout/Cursor.svelte'
import LanguageSwitcher from '@components/ui/LanguageSwitcher.svelte' import LanguageSwitcher from '@components/ui/LanguageSwitcher.svelte'
import Footer from '@components/layout/Footer.svelte'
import Home from '@views/Home.svelte' import Home from '@views/Home.svelte'
import About from '@views/About.svelte' import About from '@views/About.svelte'
import Expertise from '@views/Expertise.svelte' import Expertise from '@views/Expertise.svelte'
@ -96,7 +95,6 @@
{/each} {/each}
</div> </div>
</main> </main>
<Footer />
<LanguageSwitcher /> <LanguageSwitcher />
<style> <style>
@ -129,7 +127,6 @@
.main { .main {
position: relative; position: relative;
z-index: 1;
overflow: hidden; overflow: hidden;
height: 100vh; height: 100vh;
} }

View file

@ -32,7 +32,7 @@
} }
</script> </script>
<footer class="site-footer"> <footer class="page-scrollable-footer">
<div class="footer-main"> <div class="footer-main">
<!-- Logo --> <!-- Logo -->
@ -115,14 +115,17 @@
</footer> </footer>
<style> <style>
.site-footer { footer {
width: 100vw; width: 100vw;
background: #0d0e22; background: #0d0e22;
position: fixed; }
bottom: 0;
left: 0; :global(.about .page-scrollable-footer) {
right: 0; margin-left: -16.6vw;
z-index: -2; }
:global(.blog .page-scrollable-footer) {
margin-left: -12.4vw;
} }
/* --- Main row --- */ /* --- Main row --- */

View file

@ -17,11 +17,6 @@
.page-scrollable { .page-scrollable {
height: 100%; height: 100%;
overflow-y: auto; overflow-y: auto;
margin-bottom: var(--footer-height);
}
.page-scrollable .page-container {
margin-bottom: var(--footer-height);
} }
/* Vertical Lines */ /* Vertical Lines */

View file

@ -3,6 +3,7 @@
import { slides } from '@state/slides.svelte' import { slides } from '@state/slides.svelte'
import { t } from '@i18n' import { t } from '@i18n'
import Footer from '@components/layout/Footer.svelte'
let { data } = $props() let { data } = $props()
@ -153,6 +154,7 @@
</section> </section>
{/if} {/if}
<Footer />
</div> </div>
</div> </div>

View file

@ -5,6 +5,7 @@
*/ */
import { t } from '@i18n' import { t } from '@i18n'
import Footer from '@components/layout/Footer.svelte'
let { data, onBack } = $props() let { data, onBack } = $props()
@ -114,6 +115,7 @@
{/if} {/if}
</article> </article>
<Footer />
</div> </div>
<style> <style>

View file

@ -5,6 +5,7 @@
import Article from '@views/Article.svelte' import Article from '@views/Article.svelte'
import { t } from '@i18n' import { t } from '@i18n'
import Footer from '@components/layout/Footer.svelte'
let { data } = $props() let { data } = $props()
@ -176,6 +177,7 @@
<p class="blog-loading">{t('loading')}</p> <p class="blog-loading">{t('loading')}</p>
{/if} {/if}
<Footer />
</div> </div>
{/if} {/if}