diff --git a/src/_includes/layouts/project.njk b/src/_includes/layouts/project.njk
index 1f98f76..7fbaf09 100644
--- a/src/_includes/layouts/project.njk
+++ b/src/_includes/layouts/project.njk
@@ -17,8 +17,15 @@
{{ content | safe }}
diff --git a/src/_transforms/parse.js b/src/_transforms/parse.js
index f507787..ebc819a 100644
--- a/src/_transforms/parse.js
+++ b/src/_transforms/parse.js
@@ -53,7 +53,7 @@ export default (value, outputPath) => {
}
}
- const pageNavHeadings = document.querySelectorAll("main:has(nav) h2");
+ const pageNavHeadings = document.querySelectorAll("main:has(nav) article h2");
if (pageNavHeadings.length > 0) {
const navContainer = document.querySelector("main nav ul");
for (const heading of pageNavHeadings) {
diff --git a/src/assets/scripts/app.js b/src/assets/scripts/app.js
index 34931c0..67b2c3f 100644
--- a/src/assets/scripts/app.js
+++ b/src/assets/scripts/app.js
@@ -15,16 +15,13 @@ customElements.define(
super();
this.toggle = this.querySelector("[aria-controls]");
- this.content = this.querySelector("[content]");
- if (!this.toggle || !this.content) {
+ if (!this.toggle) {
return;
}
this.toggle.removeAttribute("hidden");
this.toggle.setAttribute("aria-expanded", false);
- this.content.setAttribute("hidden", "");
-
this.toggle.addEventListener("click", this);
}
@@ -32,10 +29,8 @@ customElements.define(
event.preventDefault();
if (this.toggle.getAttribute("aria-expanded") === "true") {
this.toggle.setAttribute("aria-expanded", false);
- this.content.setAttribute("hidden", "");
} else {
this.toggle.setAttribute("aria-expanded", true);
- this.content.removeAttribute("hidden");
}
}
}
diff --git a/src/assets/styles/collections/_projects.css b/src/assets/styles/collections/_projects.css
index b0b926a..e0c0f55 100644
--- a/src/assets/styles/collections/_projects.css
+++ b/src/assets/styles/collections/_projects.css
@@ -38,17 +38,54 @@
.project nav,
.project article {
- padding-inline: var(--common-inline-padding);
box-shadow: inset 0 -0.1875rem 0 0 var(--fl-fgColor, transparent);
}
.project nav {
background-color: var(--fl-bgColor, var(--color-indigo-100));
- padding-block: 1.25rem 3.125rem;
+}
+
+.project nav > h2 {
+ display: none;
+}
+
+.project nav inclusive-disclosure {
+ padding-inline: 0;
+}
+
+.project nav inclusive-disclosure > * {
+ padding-inline: var(--common-inline-padding);
+}
+
+.project nav inclusive-disclosure [aria-expanded] {
+ box-shadow: none;
+}
+
+.project nav inclusive-disclosure [aria-expanded]:after {
+ right: var(--common-inline-padding);
+}
+
+@media (width >= 70.875rem) {
+ .project nav > h2 {
+ display: block;
+ }
+
+ .project nav inclusive-disclosure > * {
+ padding-inline: 0;
+ }
+
+ .project nav inclusive-disclosure [aria-expanded] {
+ display: none;
+ }
+
+ .project nav inclusive-disclosure [aria-expanded] + * {
+ display: block;
+ }
}
.project article {
padding-block: 2.125rem 5rem;
+ padding-inline: var(--common-inline-padding);
}
.project article > * {
diff --git a/src/assets/styles/components/_disclosure.css b/src/assets/styles/components/_disclosure.css
index eb0fd89..ed0ba91 100644
--- a/src/assets/styles/components/_disclosure.css
+++ b/src/assets/styles/components/_disclosure.css
@@ -53,6 +53,14 @@ inclusive-disclosure [aria-expanded] {
}
}
+inclusive-disclosure [aria-expanded] + * {
+ display: none;
+}
+
+inclusive-disclosure [aria-expanded="true"] + * {
+ display: block;
+}
+
inclusive-disclosure [aria-expanded="true"]::after {
transform: rotate(180deg);
}