300 lines
12 KiB
HTML
300 lines
12 KiB
HTML
|
|
<!doctype html>
|
||
|
|
<html lang="en" class="scroll-smooth">
|
||
|
|
<head>
|
||
|
|
<meta charset="utf-8" />
|
||
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||
|
|
|
||
|
|
<title>Accessibility — Agnes the Alien</title>
|
||
|
|
|
||
|
|
<meta name="description" content="Personal website and blog of Agnes the Alien." />
|
||
|
|
<meta name="generator" content="Eleventy" />
|
||
|
|
|
||
|
|
|
||
|
|
<link rel="canonical" href="https://agnes.love/accessibility/" />
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<meta property="og:type" content="website" />
|
||
|
|
<meta property="og:site_name" content="Agnes the Alien" />
|
||
|
|
<meta property="og:url" content="https://agnes.love/accessibility/" />
|
||
|
|
<meta property="og:title" content="Accessibility" />
|
||
|
|
<meta property="og:description" content="Personal website and blog of Agnes the Alien." />
|
||
|
|
<meta property="og:image" content="https://agnes.love//screenshot.png" />
|
||
|
|
<meta property="og:image:alt" content="Agnes the Alien preview" />
|
||
|
|
|
||
|
|
|
||
|
|
<meta name="twitter:card" content="summary_large_image" />
|
||
|
|
|
||
|
|
<meta name="twitter:title" content="Accessibility" />
|
||
|
|
<meta name="twitter:description" content="Personal website and blog of Agnes the Alien." />
|
||
|
|
<meta name="twitter:image" content="https://agnes.love//screenshot.png" />
|
||
|
|
<meta name="twitter:image:alt" content="Agnes the Alien preview" />
|
||
|
|
<link rel="webmention" href="https://webmention.io/agnes.love/webmention" />
|
||
|
|
<link rel="pingback" href="https://webmention.io/agnes.love/xmlrpc" />
|
||
|
|
<link rel="stylesheet" href="/assets/css/build.css" />
|
||
|
|
<link rel="alternate" type="application/atom+xml" title="Agnes the Alien Feed" href="/feed.xml" />
|
||
|
|
|
||
|
|
<link rel="icon" href="/assets/favicon.svg" type="image/svg+xml">
|
||
|
|
<link rel="shortcut icon" href="/assets/favicon.svg" type="image/svg+xml">
|
||
|
|
<link rel="mask-icon" href="/assets/favicon.svg" color="#a78bfa">
|
||
|
|
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png">
|
||
|
|
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png">
|
||
|
|
<link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png">
|
||
|
|
<meta name="theme-color" content="#a78bfa" />
|
||
|
|
<link rel="manifest" href="/manifest.webmanifest">
|
||
|
|
|
||
|
|
<link id="hljs-light" rel="stylesheet" href="https://unpkg.com/@highlightjs/cdn-assets@11.9.0/styles/tokyo-night-light.min.css">
|
||
|
|
<link id="hljs-dark" rel="stylesheet" href="https://unpkg.com/@highlightjs/cdn-assets@11.9.0/styles/tokyo-night-dark.min.css" disabled>
|
||
|
|
<script src="https://unpkg.com/@highlightjs/cdn-assets@11.9.0/highlight.min.js" defer></script>
|
||
|
|
<script defer>
|
||
|
|
document.addEventListener('DOMContentLoaded', function () {
|
||
|
|
const html = document.documentElement;
|
||
|
|
const light = document.getElementById('hljs-light');
|
||
|
|
const dark = document.getElementById('hljs-dark');
|
||
|
|
function applyTheme() {
|
||
|
|
const isDark = html.classList.contains('dark');
|
||
|
|
if (light && dark) {
|
||
|
|
light.disabled = !!isDark;
|
||
|
|
dark.disabled = !isDark;
|
||
|
|
}
|
||
|
|
}
|
||
|
|
// Initial apply
|
||
|
|
applyTheme();
|
||
|
|
// Observe class changes on <html> to react to dark-mode toggle
|
||
|
|
const observer = new MutationObserver(applyTheme);
|
||
|
|
observer.observe(html, { attributes: true, attributeFilter: ['class'] });
|
||
|
|
// Highlight code blocks
|
||
|
|
document.querySelectorAll('pre code').forEach((el) => {
|
||
|
|
if (window.hljs && typeof window.hljs.highlightElement === 'function') {
|
||
|
|
window.hljs.highlightElement(el);
|
||
|
|
}
|
||
|
|
});
|
||
|
|
});
|
||
|
|
</script>
|
||
|
|
<style>
|
||
|
|
.contrast { filter: contrast(1.2) saturate(1.1); }
|
||
|
|
.reduce-motion * { transition: none !important; animation: none !important; }
|
||
|
|
</style>
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<script type="application/ld+json">
|
||
|
|
{
|
||
|
|
"@context": "https://schema.org",
|
||
|
|
"@graph": [
|
||
|
|
{
|
||
|
|
"@type": "WebSite",
|
||
|
|
"url": "https://agnes.love",
|
||
|
|
"name": "Agnes the Alien",
|
||
|
|
"description": "Personal website and blog of Agnes the Alien."
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"@type": "Organization",
|
||
|
|
"name": "Agnes the Alien",
|
||
|
|
"url": "https://agnes.love",
|
||
|
|
"sameAs": [
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
]
|
||
|
|
}
|
||
|
|
]
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<script type="application/ld+json">
|
||
|
|
{
|
||
|
|
"@context": "https://schema.org",
|
||
|
|
"@type": "BreadcrumbList",
|
||
|
|
"itemListElement": [
|
||
|
|
{
|
||
|
|
"@type": "ListItem",
|
||
|
|
"position": 1,
|
||
|
|
"name": "Home",
|
||
|
|
"item": "https://agnes.love"
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"@type": "ListItem",
|
||
|
|
"position": 2,
|
||
|
|
"name": "Accessibility",
|
||
|
|
"item": "https://agnes.love/accessibility/"
|
||
|
|
}
|
||
|
|
|
||
|
|
]
|
||
|
|
}
|
||
|
|
</script>
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
</head>
|
||
|
|
<body class="bg-[var(--bg)] text-[var(--text)] min-h-screen flex flex-col">
|
||
|
|
<div id="progress-bar" aria-hidden="true"></div>
|
||
|
|
<header class="bg-[var(--surface)] border-b border-gray-200 dark:border-gray-700">
|
||
|
|
<div class="container mx-auto px-4 py-3 flex items-center gap-3">
|
||
|
|
<button id="hamburger" class="md:hidden p-2 rounded border border-gray-300 dark:border-gray-600" aria-label="Toggle menu" aria-controls="primary-nav" aria-expanded="false">
|
||
|
|
<span class="bar-1 block w-5 h-0.5 bg-gray-700 dark:bg-gray-200 mb-1 transition-transform"></span>
|
||
|
|
<span class="bar-2 block w-5 h-0.5 bg-gray-700 dark:bg-gray-200 mb-1 transition-opacity"></span>
|
||
|
|
<span class="bar-3 block w-5 h-0.5 bg-gray-700 dark:bg-gray-200 transition-transform"></span>
|
||
|
|
</button>
|
||
|
|
<a class="text-lg font-semibold" href="/">Agnes the Alien</a>
|
||
|
|
<form class="ml-auto hidden sm:block" role="search" aria-label="Site" action="/search/" method="get">
|
||
|
|
<label class="sr-only" for="q">Search</label>
|
||
|
|
<input id="q" name="q" type="search" placeholder="Search…" class="px-3 py-2 border rounded w-64" />
|
||
|
|
</form>
|
||
|
|
<div class="flex items-center gap-2 ml-2">
|
||
|
|
<button id="dark-toggle" class="px-2 py-1 text-sm border rounded" aria-pressed="false" aria-label="Toggle dark mode">🌙</button>
|
||
|
|
<div class="relative">
|
||
|
|
<button id="a11y-toggle" class="px-2 py-1 text-sm border rounded" aria-expanded="false" aria-controls="a11y-menu">A11y</button>
|
||
|
|
<div id="a11y-menu" class="absolute right-0 mt-1 bg-[var(--surface)] border rounded p-2 text-sm space-x-2 whitespace-nowrap hidden">
|
||
|
|
<button id="font-dec" class="px-2 py-1 border rounded">A-</button>
|
||
|
|
<button id="font-inc" class="px-2 py-1 border rounded">A+</button>
|
||
|
|
<button id="contrast-toggle" class="px-2 py-1 border rounded">Contrast</button>
|
||
|
|
<button id="motion-toggle" class="px-2 py-1 border rounded">Reduce motion</button>
|
||
|
|
<button id="font-toggle" type="button" aria-pressed="false" class="px-2 py-1 border rounded hidden md:inline-block">System Fonts</button>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</header>
|
||
|
|
|
||
|
|
<nav class="bg-[var(--surface)] border-b border-gray-200 dark:border-gray-700">
|
||
|
|
<div id="primary-nav" class="container mx-auto px-4 py-2 hidden md:block">
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<ul class="flex flex-col md:flex-row text-base md:text-sm space-y-3 md:space-y-0 md:space-x-6">
|
||
|
|
<li>
|
||
|
|
<a href="/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>🏠 Home</a>
|
||
|
|
</li>
|
||
|
|
<li>
|
||
|
|
<a href="/blog/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>✍️ Blog</a>
|
||
|
|
</li>
|
||
|
|
<li>
|
||
|
|
<a href="/about/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>👋 About</a>
|
||
|
|
</li>
|
||
|
|
<li>
|
||
|
|
<a href="/uses/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>🛠️ Uses</a>
|
||
|
|
</li>
|
||
|
|
<li>
|
||
|
|
<a href="/now/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>📍 Now</a>
|
||
|
|
</li>
|
||
|
|
<li>
|
||
|
|
<a href="/contact/" class="nav-item block py-2 text-purple-600 dark:text-purple-400 "
|
||
|
|
>💬 Contact</a>
|
||
|
|
</li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
</nav>
|
||
|
|
|
||
|
|
<div class="container mx-auto px-4 py-6 max-w-4xl flex-1">
|
||
|
|
<main>
|
||
|
|
<h1 class="text-2xl font-bold mb-4">Accessibility</h1>
|
||
|
|
<p>This site aims for WCAG 2.1 AA. Use the A11y menu in the header to adjust font size, contrast, and motion preferences. Preferences are saved in your browser.</p>
|
||
|
|
|
||
|
|
</main>
|
||
|
|
</div>
|
||
|
|
|
||
|
|
<footer class="bg-[var(--surface)] border-t border-gray-200 dark:border-gray-700 mt-12">
|
||
|
|
<div class="container mx-auto px-4 py-8 max-w-4xl">
|
||
|
|
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 text-sm">
|
||
|
|
<div>
|
||
|
|
<h3 class="font-semibold mb-2">Technical</h3>
|
||
|
|
<ul class="space-y-1 text-gray-600 dark:text-gray-400">
|
||
|
|
<li><a href="https://11ty.dev" target="_blank" rel="noopener">Built with Eleventy</a></li>
|
||
|
|
<li><a href="/style/" class="hover:text-blue-600">Style Guide</a></li>
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<li><a href="https://treasurechest.alien.town/agnes/agnes-love/edit/main/accessibility.njk" class="hover:text-blue-600" target="_blank" rel="noopener">Edit This Page</a></li>
|
||
|
|
<li><a href="https://treasurechest.alien.town/agnes/agnes-love/blob/main/GUIDE.md" class="hover:text-blue-600" target="_blank" rel="noopener">Project Guide</a></li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
<div>
|
||
|
|
<h3 class="font-semibold mb-2">Navigation</h3>
|
||
|
|
<ul class="space-y-1 text-gray-600 dark:text-gray-400">
|
||
|
|
<li><a href="/sitemap/" class="hover:text-blue-600">Sitemap</a></li>
|
||
|
|
<li><a href="/archive/" class="hover:text-blue-600">Archive</a></li>
|
||
|
|
<li><a href="/categories/" class="hover:text-blue-600">Categories</a></li>
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
<div>
|
||
|
|
<h3 class="font-semibold mb-2">Connect</h3>
|
||
|
|
<ul class="space-y-1 text-gray-600 dark:text-gray-400">
|
||
|
|
|
||
|
|
|
||
|
|
<li>
|
||
|
|
<a href="mailto:alienhospitals@gmail.com" rel="me" class="inline-flex items-center gap-2 hover:text-blue-600">
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<svg class="w-4 h-4" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true" role="img"><path d="M4 4h16v16H4z"/><path d="m22 6-10 7L2 6"/></svg>
|
||
|
|
|
||
|
|
<span>Email</span>
|
||
|
|
</a>
|
||
|
|
</li>
|
||
|
|
|
||
|
|
|
||
|
|
<li>
|
||
|
|
<a href="https://alienhttps://lesbian.alien.dentist" target="_blank" rel="me noopener" class="inline-flex items-center gap-2 hover:text-blue-600">
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
<svg class="w-4 h-4" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" role="img"><path d="M21.57 13.11c-.3 1.55-2.7 3.25-5.46 3.58-1.44.17-2.86.33-4.37.26-2.47-.11-4.43-.59-4.43-.59 0 .24.02.48.05.71.35 2.67 2.64 2.83 4.8 2.9 2.18.07 4.12-.54 4.12-.54l.09 1.99s-1.52.81-4.23.96c-1.5.08-3.36-.04-5.52-.65-4.69-1.26-5.5-6.33-5.63-11.46-.04-1.5-.02-2.92-.02-4.12 0-5.3 3.47-6.86 3.47-6.86 1.74-.8 4.72-1.14 7.83-1.16h.08c3.11.02 6.09.36 7.83 1.16 0 0 3.47 1.56 3.47 6.86 0 0 .04 3.01-.08 4.98-.05.82-.16 1.63-.34 2.41z"/></svg>
|
||
|
|
|
||
|
|
<span>Mastodon</span>
|
||
|
|
</a>
|
||
|
|
</li>
|
||
|
|
|
||
|
|
|
||
|
|
</ul>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
<div class="border-t border-gray-200 dark:border-gray-700 mt-6 pt-6 text-center text-gray-500">
|
||
|
|
<p>
|
||
|
|
2025 Agnes the Alien •
|
||
|
|
<a href="/feed.xml" class="hover:text-blue-600">RSS</a> •
|
||
|
|
Code: <a href="https://opensource.org/license/mit" target="_blank" rel="noopener" class="hover:text-blue-600">MIT</a> •
|
||
|
|
Content: <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/" target="_blank" rel="noopener" class="hover:text-blue-600">CC BY-NC-SA 4.0</a>
|
||
|
|
</p>
|
||
|
|
</div>
|
||
|
|
</div>
|
||
|
|
</footer>
|
||
|
|
|
||
|
|
<script src="/assets/js/main.js"></script>
|
||
|
|
<script src="/assets/js/flexsearch.min.js"></script>
|
||
|
|
<script src="/assets/js/search.js"></script>
|
||
|
|
<script src="/assets/js/easter-eggs.js"></script>
|
||
|
|
</body>
|
||
|
|
</html>
|