# Accessibility for 3D websites

**URL:** <https://discourse.threejs.org/t/accessibility-for-3d-websites/87092>\
**Category:** Questions\
**Tags:** accessibility\
**Created:** [September 19, 2025, 10:56am UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092 "2025-09-19T10:56:30Z")\
**Posts on this page:** 7\
**Page:** 2

<div class="post-metadata">

**Author:** ![kpachinger](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/kpachinger/32/4616_2.png) [@kpachinger](https://discourse.threejs.org/u/kpachinger)\
**Post date:** [October 8, 2025, 8:29pm UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/21 "2025-10-08T20:29:07Z")

</div>

The 3 **D** ’s of DHTML:

- Supply & **Demand** 101: specify humanitarian goals beyond one’s proclivity.
- Marketing & **Diversifying** 101: change the topic.
- **Disability** Governance 101: overwhelm from a safe distance.
- display: none

---

<div class="post-metadata">

**Author:** ![PavelBoytchev](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/pavelboytchev/32/38639_2.png) [@PavelBoytchev](https://discourse.threejs.org/u/PavelBoytchev)\
**Post date:** [October 8, 2025, 10:01pm UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/22 "2025-10-08T22:01:54Z")

</div>

@kpachinger This post is incomplete. It lacks the unique signature (that I use as inspiration for passwords) 🙂

---

<div class="post-metadata">

**Author:** ![kpachinger](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/kpachinger/32/4616_2.png) [@kpachinger](https://discourse.threejs.org/u/kpachinger)\
**Post date:** [October 9, 2025, 8:03am UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/23 "2025-10-09T08:03:16Z")

</div>

@PavelBoytchev  
If blindness serves as necessity, deafness it is.  
~ Daft Huck

---

<div class="post-metadata">

**Author:** ![battosai\_the\_code\_slayer](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/battosai_the_code_slayer/32/12354_2.png) [@battosai\_the\_code\_slayer](https://discourse.threejs.org/u/battosai_the_code_slayer)\
**Post date:** [April 12, 2026, 6:41pm UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/24 "2026-04-12T18:41:41Z")

</div>

Really glad someone posted about this. I’ve been doing accessibility work and learning webGL for a few years now. Canvas is like a black box but Simon Bruno’s Three.js course had one way of mapping HTML elements to 3D objects within the canvas. That way the user can interact with that elements that are intended for user interaction. BUT it feels like a hack. I’m surprised with AI blowing up there hasn’t been a focus on this. I wrote an article about this a while back with some suggestions on making Threejs “objects” accessible through mapping HTML elements but it’s far from solving the real issue.

[https://javascript.plainenglish.io/bridging-webgl-and-accessibility-55e6d7802403](https://javascript.plainenglish.io/bridging-webgl-and-accessibility-55e6d7802403)

Accessibility needs are picked up real slowly by devs and companies. Even I ignored it for several years. It’s important though and as big as 3D is in the web there should be an initiative towards it.

If anyone knows of an initiative or would like to try and advocate for it I’m all for joining in. Im an accessibility focused engineer and I don’t want to stop/learning Three.js just because its inaccessible.

---

<div class="post-metadata">

**Author:** ![paulbrzeski](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/paulbrzeski/32/38558_2.png) [@paulbrzeski](https://discourse.threejs.org/u/paulbrzeski)\
**Post date:** [October 15, 2026, 9:25am UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/25 "2026-10-15T09:25:37Z")

</div>

Well, it’s taken me a year but I was finally able to put some time into this!

I’ve implemented the above suggestions about display:none and added a new accessibility menu that provides an alternative navigation path via the keyboard and for screen reading software.

The site also has pan/zoom now, including on mobile where touch can be used to do so.

Keen for any feedback to improve!

 ![image](https://canada1.discourse-cdn.com/flex035/uploads/threejs/original/3X/0/e/0e583ab679727a15745e49fc55359c714c00c933.jpeg)

---

<div class="post-metadata">

**Author:** ![Lucas\_Lamonier](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/lucas_lamonier/32/61338_2.png) [@Lucas\_Lamonier](https://discourse.threejs.org/u/Lucas_Lamonier)\
**Post date:** [October 15, 2026, 9:39am UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/26 "2026-10-15T09:39:43Z")

</div>

@paulbrzeski that’s really nice! Can we have a link to check it out?

---

<div class="post-metadata">

**Author:** ![paulbrzeski](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.threejs.org/paulbrzeski/32/38558_2.png) [@paulbrzeski](https://discourse.threejs.org/u/paulbrzeski)\
**Post date:** [October 15, 2026, 10:05am UTC](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092/27 "2026-10-15T10:05:11Z")

</div>

Of course!

> **[Open Studios | Perth, Western Australia](https://openstudios.xyz)**
>
> Welcome to Open Studios, your go-to destination for cutting-edge digital creative and technical production. Nestled in the vibrant city of Perth, Australia, we pride ourselves on being a specialized digital production studio that stands out from the...

[Previous page](https://discourse.threejs.org/t/accessibility-for-3d-websites/87092.md?page=1)
