[GRASS-git] [OSGeo/grass-website] 227cf6: SEO: Fix HTML validity errors and heading hierarch...

Corey White noreply at github.com
Fri Jul 31 13:38:06 PDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/OSGeo/grass-website
  Commit: 227cf6e5c62513ea3fc49a1eed2b0bf493a30065
      https://github.com/OSGeo/grass-website/commit/227cf6e5c62513ea3fc49a1eed2b0bf493a30065
  Author: Corey White <smortopahri at gmail.com>
  Date:   2026-07-31 (Fri, 31 Jul 2026)

  Changed paths:
    M content/contribute/_index.en.md
    M content/learn/_index.en.md
    M themes/grass/layouts/_default/single.html
    M themes/grass/layouts/about/brand.html
    M themes/grass/layouts/about/credits.html
    M themes/grass/layouts/about/list.html
    M themes/grass/layouts/about/overview.html
    M themes/grass/layouts/contribute/contribute.html
    M themes/grass/layouts/contribute/devel.html
    M themes/grass/layouts/contribute/list.html
    M themes/grass/layouts/download/addons.html
    M themes/grass/layouts/download/single.html
    M themes/grass/layouts/events/allevents.html
    M themes/grass/layouts/events/event.html
    M themes/grass/layouts/index.html
    M themes/grass/layouts/learn/books.html
    M themes/grass/layouts/learn/gallery.html
    M themes/grass/layouts/learn/list.html
    M themes/grass/layouts/learn/manuals.html
    M themes/grass/layouts/learn/overview.html
    M themes/grass/layouts/news/allnews.html
    M themes/grass/layouts/news/news.html
    M themes/grass/layouts/partials/footer.html
    M themes/grass/layouts/partials/grass-download.html
    M themes/grass/layouts/partials/head.html
    M themes/grass/layouts/partials/navigation.html
    M themes/grass/layouts/partials/numfocus.html
    M themes/grass/layouts/partials/osgeo.html
    M themes/grass/layouts/partials/zenodo-card.html
    M themes/grass/layouts/shortcodes/tab.html
    M themes/grass/layouts/sponsor/donate.html
    M themes/grass/layouts/support/commercial.html
    M themes/grass/layouts/support/community.html
    M themes/grass/layouts/support/support.html

  Log Message:
  -----------
  SEO: Fix HTML validity errors and heading hierarchy (#680)

* seo: Fix HTML validity errors (#526)

Resolve every non-heading W3C validator error across the site (home, download,
news, about, support, commercial, events, learn), rebased on the current master
including the redesigned download page:

- favicon <link sizes> used an invalid rel; use rel="icon" type="image/png"
- dropdown menu had aria-labelledby on a generic <div>; add role="menu" and
  role="menuitem"
- home page: <main> nested in <section> became a <div>; removed orphan itemprop
  (JSON-LD covers it); moved <img width="N%"> to inline style
- osgeo/numfocus/zenodo/learn images and iframes: percentage width moved to style
- learn: a <span> wrapped block content (.Content); changed to <div>
- download: the download button was an <a type="button"> (invalid); dropped the
  attribute (the dropdown <button> keeps its valid type)
- download tabs: scope auto-generated heading IDs per tab so repeated headings
  across OS tabs no longer produce duplicate IDs
- events: date range is not a machine time; use <span> not <time>
- news/about/support: removed duplicate </body></html> and a stray </section>,
  closed an unclosed container <div>
- support: company logos gained alt text and dropped the invalid float:center

Verified with the W3C Nu validator against a Hugo 0.113.0 build: only
heading-level skips remain, handled in the #520 branch.

* seo: Fix heading hierarchy and add a page h1 (#520)

Give every page a single top-level <h1> with real text and remove the
heading-level skips flagged by the W3C validator:

- promote the top <h2 class="page-title|section-title"> to <h1> across the
  section and single templates (.page-title/.section-title are class-based, so
  the look is unchanged; matches about/governance and about/roadmap)
- home page: add visually-hidden heading text inside the logo <h1>; promote the
  topic cards from h3 to h2
- footer: the column titles were <h6> after h3 content; use <h2 class="h6 ...">
  to keep the small look without skipping levels
- promote direct sub-headings (about sub-pages, company names, event titles,
  learn cards) so nothing jumps h1->h3 or h2->h4
- content: fix heading levels in the learn and contribute index pages

Verified per page with the W3C Nu validator on a Hugo 0.113.0 build: home,
about, download, news, learn, contribute, support, commercial and events are
clean. Follow-ups (separate): the brand page's brandLogo/button shortcodes and
a microdata <figure> on the addons page.



To unsubscribe from these emails, change your notification settings at https://github.com/OSGeo/grass-website/settings/notifications


More information about the grass-commit mailing list