Yulio Knowledge Base > Sharing and Presenting a VR Project > Technical Guide: Partial ADA Compliance for Yulio Embedded Projects

Technical Guide: Partial ADA Compliance for Yulio Embedded Projects

Yulio embedded projects are not fully ADA/WCAG compliant due to inherent limitations of 360° panoramic content. However, users can implement partial compliance by following the recommended practices in this guide.

Known Limitations

  • The Yulio viewer does not provide internal descriptions for individual panoramic scenes
  • 360° content is inherently visual and may not be fully accessible to screen reader users
  • Navigation hotspots within the viewer may have limited accessibility

What You Can Implement

1. Basic Semantic HTML

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

    <title>Virtual Tour – [Location Name]</title>

</head>

<body>

    <main id=”main-content”>

        <!– Your content here –>

    </main>

</body>

</html>

2. Embed Structure with Accessibility

<!– Main tour section –>

<section id=”tour-section” class=”tour-section” aria-label=”Interactive Virtual Tour and Detailed Descriptions”>

    

    <h2>Interactive 360° Virtual Tour</h2>

    

    <!– Iframe container –>

    <div class=”iframe-wrapper”>

        <iframe src=”[EMBED_URL]”

            title=”[Description of the tour and main areas]”

            style=”width:100%;height:600px;”

            scrolling=”no”

            frameborder=”0″

            allowfullscreen>

        </iframe>

    </div>

    

    <!– Navigation instructions –>

    <p>

        <strong>Navigation Tips:</strong> Click and drag to look around • Use arrow keys to rotate view • Click hotspots on the floor to move between rooms • Scroll to zoom in/out

    </p>

</section>

3. Skip to Description Link

<!– In the hero/introduction section –>

<a href=”#tour-description” class=”skip-to-description”>

    Skip to Detailed Description →

</a>

4. Complete Text Description

<!– Detailed tour description –>

<div id=”tour-description” class=”tour-description” role=”region” aria-label=”Detailed Tour Description”>

    

    <h3>Comprehensive Tour Description</h3>

    

    <p>

        Welcome to [Location Name], a [general description] space. This virtual tour will guide you through [number] distinct areas: [list all areas with brief description of each one].

    </p>

    

    <!– For each tour area –>

    <h4>1. [Area Name]</h4>

    <p>

        <strong>[Area Type]</strong> – [Detailed description of the area’s purpose and characteristics].

    </p>

    <ul>

        <li><strong>Feature 1:</strong> Detailed description</li>

        <li><strong>Feature 2:</strong> Detailed description</li>

        <li><strong>Feature 3:</strong> Detailed description</li>

    </ul>

    

    <!– Repeat for each area –>

</div>

5. Accessibility Notice

<!– Accessibility limitations notice –>

<div class=”accessibility-notice” role=”note” aria-label=”Accessibility Information”>

    <h3>⚠️ Accessibility Notice</h3>

    <p>

        <strong>Partial ADA/WCAG Compliance:</strong> This virtual tour embed implements accessible markup at the container level, including:

    </p>

    <ul>

        <li>✓ Comprehensive text descriptions of all areas</li>

        <li>✓ Proper semantic HTML structure and ARIA labels</li>

        <li>✓ Keyboard navigation support for the page</li>

    </ul>

    <p><strong>Known Limitations:</strong></p>

    <ul>

        <li>✗ The Yulio viewer does not provide internal descriptions for individual panoramic scenes</li>

        <li>✗ 360° panoramic content is inherently visual</li>

        <li>✗ Navigation hotspots may have limited accessibility</li>

    </ul>

</div>

Complete Minimal Template

<!DOCTYPE html>

<html lang=”en”>

<head>

    <meta charset=”UTF-8″>

    <meta name=”viewport” content=”width=device-width, initial-scale=1.0″>

    <title>[Location Name] – Virtual Tour</title>

</head>

<body>

    <main id=”main-content”>

        <!– Introduction –>

        <section aria-label=”Introduction and Overview”>

            <h1>[Location Name] – Virtual Tour</h1>

            <p>Explore [brief space description] through an interactive 360° virtual tour.</p>

            <a href=”#tour-description”>Skip to Detailed Description →</a>

        </section>

 

        <!– Virtual Tour –>

        <section id=”tour-section” aria-label=”Virtual Tour and Descriptions”>

            <h2>Interactive 360° Virtual Tour</h2>

            

            <div>

                <iframe src=”[EMBED_URL]”

                    title=”[Description of the tour and main areas]”

                    style=”width:100%;height:600px;”

                    scrolling=”no”

                    frameborder=”0″

                    allowfullscreen>

                </iframe>

            </div>

            

            <p><strong>Navigation:</strong> Click and drag to look around • Use arrow keys to rotate • Click hotspots to move</p>

 

            <!– Detailed Description –>

            <div id=”tour-description” role=”region” aria-label=”Detailed Description”>

                <h3>Comprehensive Tour Description</h3>

                <p>[General description of the tour and areas]</p>

                

                <h4>Area 1: [Name]</h4>

                <p>[Detailed description with features, furniture, purpose, etc.]</p>

                

                <!– Repeat for each area –>

            </div>

 

            <!– Accessibility Notice –>

            <div role=”note” aria-label=”Accessibility Information”>

                <h3>⚠️ Accessibility Notice</h3>

                <p><strong>Partial Compliance:</strong> This tour implements text descriptions and accessible structure, but 360° content has inherent accessibility limitations.</p>

            </div>

        </section>

    </main>

</body>

</html>

 

Sample Code – Partially ADA Compliant:

View a sample of an embedded experience that is partially ADA compliant.

For the best experience, please download the file and open it on your computer: Sample Project

Implementation Checklist

  • Add lang attribute to HTML
  • Include descriptive title in iframe
  • Provide complete text descriptions of all areas
  • Use semantic HTML structure (main, section, h1-h6)
  • Add appropriate ARIA labels
  • Include “skip to description” link
  • Add navigation instructions
  • Include accessibility limitations notice
  • Test keyboard navigation on the page
  • Validate with accessibility tools

Additional Tips

  1. Be Specific: Describe colors, textures, layout, and atmosphere of each area
  2. Use Clear Language: Avoid unnecessary technical jargon
  3. Structure Logically: Organize descriptions in an order that makes sense for the tour
  4. Test Regularly: Use screen readers to test the user experience

This guide provides partial compliance. For more robust accessibility solutions, consider complementary alternatives such as narrated audio tours.

References

Leave a Reply