<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
</div>
</nav>
<main>
- <div class="slideshow full"><img
- src="/media/photos_3840/groke1.jpg" />
+ <div class="slideshow full">
<img
- src="/media/photos_3840/groke2.jpg" />
+ src="/media/photos_3840/groke21.jpg" />
<img
- src="/media/photos_3840/groke3.jpg" />
+ src="/media/photos_3840/groke13.jpg" />
<img
- src="/media/photos_3840/groke4.jpg" />
+ src="/media/photos_3840/groke6.jpg" />
<img
- src="/media/photos_3840/groke5.jpg" />
+ src="/media/photos_3840/groke24.jpg" />
<img
- src="/media/photos_3840/groke6.jpg" />
+ src="/media/photos_3840/groke23.jpg" />
<img
- src="/media/photos_3840/groke7.jpg" />
+ src="/media/photos_3840/groke14.jpg" />
<img
- src="/media/photos_3840/groke8.jpg" />
+ src="/media/photos_3840/groke20.jpg" />
<img
- src="/media/photos_3840/groke9.jpg" />
+ src="/media/photos_3840/groke25.jpg" />
<img
- src="/media/photos_3840/groke10.jpg" />
+ src="/media/photos_3840/groke28.jpg" />
<img
- src="/media/photos_3840/groke11.jpg" />
+ src="/media/photos_3840/groke3.jpg" />
<img
- src="/media/photos_3840/groke12.jpg" />
+ src="/media/photos_3840/groke19.jpg" />
<img
- src="/media/photos_3840/groke13.jpg" />
+ src="/media/photos_3840/groke17.jpg" />
<img
- src="/media/photos_3840/groke14.jpg" />
+ src="/media/photos_3840/groke27.jpg" />
<img
- src="/media/photos_3840/groke15.jpg" />
+ src="/media/photos_3840/groke2.jpg" />
<img
- src="/media/photos_3840/groke16.jpg" />
+ src="/media/photos_3840/groke7.jpg" />
<img
- src="/media/photos_3840/groke17.jpg" />
+ src="/media/photos_3840/groke15.jpg" />
<img
- src="/media/photos_3840/groke18.jpg" />
+ src="/media/photos_3840/groke11.jpg" />
<img
- src="/media/photos_3840/groke19.jpg" />
+ src="/media/photos_3840/groke10.jpg" />
<img
- src="/media/photos_3840/groke20.jpg" />
+ src="/media/photos_3840/groke26.jpg" />
<img
- src="/media/photos_3840/groke21.jpg" />
+ src="/media/photos_3840/groke1.jpg" />
<img
- src="/media/photos_3840/groke22.jpg" />
+ src="/media/photos_3840/groke16.jpg" />
<img
- src="/media/photos_3840/groke23.jpg" />
+ src="/media/photos_3840/groke18.jpg" />
<img
- src="/media/photos_3840/groke24.jpg" />
+ src="/media/photos_3840/groke12.jpg" />
<img
- src="/media/photos_3840/groke25.jpg" />
+ src="/media/photos_3840/groke29.jpg" />
<img
- src="/media/photos_3840/groke26.jpg" />
+ src="/media/photos_3840/groke8.jpg" />
<img
- src="/media/photos_3840/groke27.jpg" />
+ src="/media/photos_3840/groke5.jpg" />
<img
- src="/media/photos_3840/groke28.jpg" />
+ src="/media/photos_3840/groke4.jpg" />
<img
- src="/media/photos_3840/groke29.jpg" />
+ src="/media/photos_3840/groke9.jpg" />
</div>
</main>
</body>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
</nav>
<main>
<div class="slideshow full">
- <img
- src="/media/photos_3840/live-music1.jpg" />
- <img
- src="/media/photos_3840/live-music2.jpg" />
- <img
- src="/media/photos_3840/live-music3.jpg" />
- <img
- src="/media/photos_3840/live-music4.jpg" />
- <img
- src="/media/photos_3840/live-music5.jpg" />
- <img
- src="/media/photos_3840/live-music6.jpg" />
- <img
- src="/media/photos_3840/live-music7.jpg" />
- <img
- src="/media/photos_3840/live-music8.jpg" />
- <img
- src="/media/photos_3840/live-music9.jpg" />
- <img
- src="/media/photos_3840/live-music10.jpg" />
- <img
- src="/media/photos_3840/live-music11.jpg" />
- <img
- src="/media/photos_3840/live-music12.jpg" />
- <img
- src="/media/photos_3840/live-music13.jpg" />
<img
src="/media/photos_3840/live-music14.jpg" />
<img
src="/media/photos_3840/live-music32.jpg" />
<img
src="/media/photos_3840/live-music33.jpg" />
+ <img
+ src="/media/photos_3840/live-music1.jpg" />
+ <img
+ src="/media/photos_3840/live-music2.jpg" />
+ <img
+ src="/media/photos_3840/live-music3.jpg" />
+ <img
+ src="/media/photos_3840/live-music4.jpg" />
+ <img
+ src="/media/photos_3840/live-music5.jpg" />
+ <img
+ src="/media/photos_3840/live-music6.jpg" />
+ <img
+ src="/media/photos_3840/live-music7.jpg" />
+ <img
+ src="/media/photos_3840/live-music8.jpg" />
+ <img
+ src="/media/photos_3840/live-music9.jpg" />
+ <img
+ src="/media/photos_3840/live-music10.jpg" />
+ <img
+ src="/media/photos_3840/live-music11.jpg" />
+ <img
+ src="/media/photos_3840/live-music12.jpg" />
+ <img
+ src="/media/photos_3840/live-music13.jpg" />
</div>
</main>
</body>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<main>
<div class="slideshow full">
<img
- src="/media/photos_3840/le-blanc-fine-art1.jpg" />
+ src="/media/photos_3840/riders-haseen.jpg" />
+ <img
+ src="/media/photos_3840/riders-edited2.jpg" />
+ <img
+ src="/media/photos_3840/cotton-town2.jpg" />
+ <img
+ src="/media/photos_3840/cotton-town4.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art2.jpg" />
+ src="/media/photos_3840/photojournalism17.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art3.jpg" />
+ src="/media/photos_3840/photojournalism16.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art4.jpg" />
+ src="/media/photos_3840/groke3.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art5.jpg" />
+ src="/media/photos_3840/live-music19.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art6.jpg" />
+ src="/media/photos_3840/live-music32.jpg" />
<img
src="/media/photos_3840/le-blanc-fine-art7.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art8.jpg" />
+ src="/media/photos_3840/le-blanc-fine-art1.jpg" />
+ <img
+ src="/media/photos_3840/on-set8.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art9.jpg" />
+ src="/media/photos_3840/on-set14.jpg" />
<img
- src="/media/photos_3840/le-blanc-fine-art10.jpg" />
+ src="/media/photos_3840/groke21.jpg" />
+
<img
- src="/media/photos_3840/le-blanc-fine-art11.jpg" />
+ src="/media/photos_3840/groke13.jpg" />
</div>
</main>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<main>
<div class="slideshow full">
<img
- src="/media/photos_3840/zine1.png" />
+ src="/media/photos_3840/zine6.png" />
<img
- src="/media/photos_3840/zine2.png" />
+ src="/media/photos_3840/zine4.png" />
<img
src="/media/photos_3840/zine3.png" />
<img
- src="/media/photos_3840/zine4.png" />
+ src="/media/photos_3840/zine2.png" />
<img
- src="/media/photos_3840/zine5.png" />
+ src="/media/photos_3840/zine1.png" />
<img
- src="/media/photos_3840/zine6.png" />
+ src="/media/photos_3840/zine5.png" />
</div>
</main>
</body>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
<main>
<div class="slideshow full">
<img
- src="/media/photos_3840/photojournalism1.jpg" />
- <img
- src="/media/photos_3840/photojournalism2.jpg" />
+ src="/media/photos_3840/photojournalism4.jpg" />
<img
src="/media/photos_3840/photojournalism3.jpg" />
- <img
- src="/media/photos_3840/photojournalism4.jpg" />
<img
src="/media/photos_3840/photojournalism5.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism7.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism8.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism1.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism2.jpg" />
<img
src="/media/photos_3840/photojournalism6.jpg" />
<img
src="/media/photos_3840/photojournalism7.jpg" />
<img
src="/media/photos_3840/photojournalism8.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism9.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism10.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism11.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism12.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism13.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism14.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism15.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism16.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism17.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism18.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism19.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism20.jpg" />
+ <img
+ src="/media/photos_3840/photojournalism21.jpg" />
</div>
</main>
</body>
<img src="/media/arrow-white.svg" />
</li>
<li>
- <details open="true">
+ <details data-lines="4" open="true">
<summary>Personal</summary>
<ul>
<li><a href="/personal/riders/">Riders</a></li>
</details>
</li>
<li>
- <details>
+ <details data-lines="4">
<summary>Commercial</summary>
<ul>
<li><a href="/commercial/groke/">GROKE</a></li>
function setup () {
// setup the details elements
+ let b = 1;
+ if(window.innerHeight > window.innerWidth){
+ console.log("portrait");
+ b = 1.5;
+ }
const elements = document.querySelectorAll("nav details summary");
for (element of elements) {
let parent = element.parentNode;
parent.dataset.open = parent.open;
parent.open = true;
- let closedHeight = element.offsetHeight;
- let openHeight = parent.offsetHeight;
+ let l = parent.dataset.lines;
if (parent.dataset.open === "true") {
- parent.style.height = `${openHeight}px`;
+ parent.style.height = `calc(${(Number(l)+1)*b}em + ${((Number(l)+1)*b) * 10}px)`;
} else {
- parent.style.height = `${closedHeight}px`;
+ parent.style.height = `calc(${b}em + ${b}0px)`;
}
parent.style.overflow = "hidden";
e.preventDefault();
let parent = e.target.parentNode;
+ let l = parent.dataset.lines;
+
if (parent.dataset.open == "true") {
- parent.style.height = `${closedHeight}px`;
+ parent.style.height = `calc(${b}em + ${b}0px)`;
parent.dataset.open = false;
}
else {
- parent.style.height = `${openHeight}px`;
+ parent.style.height = `calc(${(Number(l)+1)*b}em + ${((Number(l)+1)*b) * 10}px)`;
parent.dataset.open = true;
}
});
});
// add in the change notes chester
+/*
const template = document.createElement('template');
template.innerHTML = `<details style="
<li><s>Enbolden the top-level menu</s></li>
<li><b>Commit the slideshow switch between</b></li>
<li><s>Text in nav bar on desktop</s></li>
+ <li><s>fix menu behaviour</s>???</li>
+ <li><s>fix mobile menu behaviour</s></li>
+ <li><b>better full slideshow behaviour</b></li>
</ul>
</details>`;
main.parentNode.insertBefore(template.content.childNodes[0], main);
+ */
}
setup();
list-style-type: none;
padding-inline-start: 20px;
}
-nav > div { margin-bottom: 50px; }
nav > ul { padding-inline-start: 0px; }
nav summary { list-style-type: none; }
nav summary:hover { color: var(--darkgray); }
+li > details { height: calc(1em + 10px); }
+
.menuBox > ul > li > a,
.menuBox > ul > li > details > summary { font-weight: 600; }
.menuBox { font-size: 1.1em; }
.smallTitle {
text-align: center;
- font-weight: bold;
+ font-weight: 600;
}
/* slideshow styling */
cursor: pointer;
}
.menuBox {
- position: fixed;
+ position: absolute;
top: 0; left: 0; bottom: 0; right: 0;
display: none;
align-items: center;
justify-content: center;
- font-size: 2em;
- line-height: 2em;
+ font-size: 1.5em;
+ line-height: 1.5em;
opacity: 0;
z-index: 100;
@media (orientation: landscape) {
.scroll { overflow: scroll; }
img:not(.menuBack > img) { cursor: zoom-in; }
+
+ main:has(> .full) {
+ overflow: hidden;
+ }
+
+ .menuBox { margin-bottom: 15em; }
}