health: fix broken pages, add image dimensions, a11y & SEO wins
Site-wide health pass (excludes in-progress blog work). Verified with a
local server + headless browser: Timeline, homepage and gallery pages load
with zero console errors and no layout distortion.
Render bugs
- Timeline page (en/mk/si): fix ../../../ paths that overshot the site root,
so the main stylesheet and hero image load again.
- Meet Student Slovenia 2023 (en/mk/si): remove a <figure> referencing
event3-photo-11.png, an image that was never uploaded (broken image).
Performance
- Add intrinsic width/height to 1039 raster <img> tags to prevent layout
shift (CLS); 450 SVGs correctly skipped. Add a global
`img { max-width:100%; height:auto }` safety net so aspect ratio is
preserved and images never overflow.
- Preload the homepage hero (LCP) image on en/mk/si.
- Load Font Awesome non-blocking (media=print/onload swap) with a <noscript>
fallback, on 225 pages.
Accessibility
- Add aria-label to 57 unlabeled newsletter email inputs.
- Add an sr-only <h1> to the three "My Route" pages (had no h1).
- Add an .sr-only utility class.
SEO
- Add meta descriptions to legal/msos-hub/support pages (en/mk/si).
Note: MK/SI meta descriptions are machine-drafted and should be proofread
by a native speaker before considering them final.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
168e4ce378
commit
9ce7450aa1
209 files changed
+1289
-1267
No files matched your search
@@ -56,7 +56,7 @@
|
||||
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
|
||||
|
||||
<!-- Font Awesome (for icons) -->
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" integrity="sha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA==" crossorigin="anonymous" referrerpolicy="no-referrer" />
|
||||
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" integrity="sha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA==" crossorigin="anonymous" referrerpolicy="no-referrer" media="print" onload="this.media='all'" /><noscript><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" integrity="sha512-DTOQO9RWCH3ppGqcWaEA1BIZOC6xxalwEsw9c2QQeAIftl+Vegovlnee1c9QX4TctnWMn13TZye+giMm8e2LwA==" crossorigin="anonymous" referrerpolicy="no-referrer" /></noscript>
|
||||
|
||||
<!-- Correct path to the main CSS file -->
|
||||
<link rel="stylesheet" href="../../../css/main.css">
|
||||
@@ -200,7 +200,7 @@
|
||||
</header>
|
||||
|
||||
<figure class="article-main-image">
|
||||
<img fetchpriority="high" src="../../../images/macedonia-welcome-skopje-square-hero.webp" alt="Macedonia Square in central Skopje">
|
||||
<img width="810" height="540" fetchpriority="high" src="../../../images/macedonia-welcome-skopje-square-hero.webp" alt="Macedonia Square in central Skopje">
|
||||
<figcaption>Macedonia Square, Skopje. Photo: <a href="https://macedonia-timeless.com/eng/cities_and_regions/cities/skopje/" target="_blank" rel="noopener">macedonia-timeless.com</a></figcaption>
|
||||
</figure>
|
||||
|
||||
@@ -238,7 +238,7 @@
|
||||
<p>That is why our memories of home are so often connected to people rather than only to places.</p>
|
||||
|
||||
<figure class="article-inline-image">
|
||||
<img loading="lazy" decoding="async" src="../../../images/macedonia-welcome-hospitality.webp" alt="A traditional Macedonian table filled with local dishes">
|
||||
<img width="960" height="640" loading="lazy" decoding="async" src="../../../images/macedonia-welcome-hospitality.webp" alt="A traditional Macedonian table filled with local dishes">
|
||||
<figcaption>Traditional Macedonian table. Photo: Youth Empowered, <a href="https://commons.wikimedia.org/wiki/File:%D0%A2%D1%80%D0%B0%D0%B4%D0%B8%D1%86%D0%B8%D0%BE%D0%BD%D0%B0%D0%BB%D0%BD%D0%B0_%D0%BC%D0%B0%D0%BA%D0%B5%D0%B4%D0%BE%D0%BD%D1%81%D0%BA%D0%B0_%D1%82%D1%80%D0%BF%D0%B5%D0%B7%D0%B0_8.jpg" target="_blank" rel="noopener">Wikimedia Commons</a>, <a href="https://creativecommons.org/licenses/by-sa/4.0/" target="_blank" rel="noopener">CC BY-SA 4.0</a> (cropped)</figcaption>
|
||||
</figure>
|
||||
|
||||
@@ -267,7 +267,7 @@
|
||||
<p>The most meaningful way to encounter it is often slowly, by walking, listening, and allowing a place to tell more than one story.</p>
|
||||
|
||||
<figure class="article-inline-image">
|
||||
<img loading="lazy" decoding="async" src="../../../images/macedonia-welcome-heritage.webp" alt="The Robevci Family House in the old town of Ohrid">
|
||||
<img width="1400" height="933" loading="lazy" decoding="async" src="../../../images/macedonia-welcome-heritage.webp" alt="The Robevci Family House in the old town of Ohrid">
|
||||
<figcaption>Robevci Family House, Ohrid. Photo: Silfiriel, <a href="https://commons.wikimedia.org/wiki/File:%D0%9A%D1%83%D1%9C%D0%B0%D1%82%D0%B0_%D0%BD%D0%B0_%D0%A0%D0%BE%D0%B1%D0%B5%D0%B2%D1%86%D0%B8_-_%D0%9C%D1%83%D0%B7%D0%B5%D1%98_%D0%BD%D0%B0_%D0%B3%D1%80%D0%B0%D0%B4_%D0%9E%D1%85%D1%80%D0%B8%D0%B4_01.jpg" target="_blank" rel="noopener">Wikimedia Commons</a>, <a href="https://creativecommons.org/licenses/by-sa/3.0/" target="_blank" rel="noopener">CC BY-SA 3.0</a> (cropped)</figcaption>
|
||||
</figure>
|
||||
|
||||
|
||||
Reference in new issue
Block a user