The skipping of crucial text in tab focus is adversely affecting the accessibility of the website

My appbar contains an image link, a warning indicating the user's current environment, and details about the logged-in user.

While testing accessibility with a screen reader, I noticed that tab focus skips over the user details in favor of a link in the sidebar.

How can I ensure that tab focus lands on the user details correctly?

<AppBar position="fixed" className={classes.appBar}>
    <Toolbar>
        <div>
            <Box style={{ display: "flex", alignItems: "center" }}>
                <a aria-label="Logo Link to home page" className={classes.prodLink} href="/home">
                    <SVGLOGO className="logo_stack" />
                    <SVGLOGOHORI className="logo" />
                </a>
                <Typography aria-label="environment warning" className={classes.envFlag} hidden={hidden}>
                    You are on the {process.env.REACT_APP_ENVIRONMENT} environment. Click{" "}
                    <a
                        aria-label="Link to production environment"
                        className={classes.prodLink}
                        href="https://www.youtube.com/watch?v=dQw4w9WgXcQ"
                        rel="noreferrer"
                    >
                        here
                    </a>{" "}
                    to go to production.
                </Typography>
            </Box>
// The user details are here.  Focus on this information is being skipped
            <Box
                id="user-info-box"
                aria-label="Logged in user details"
            >
                <i icon }}></i>
                <Box style={{ marginLeft: "10px" }}>
                    <Typography className={classes.userInfo} aria-label="User name and role">
                        {loggedUser} {userRole}
                    </Typography>
                    <Typography className={classes.userInfo} aria-label="User's experience">
                        {userExperience}
                    </Typography>
                </Box>
            </Box>  
        </div>
    </Toolbar>
</AppBar>

Answer №2

When you refer to user details, are you talking about completing a form or simply displaying text?

You cannot navigate plain text (such as <p>) using the tab key; instead, you can use arrow keys to scroll through the content. The tab key is typically used for navigating links and buttons.

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Experiencing the Pause: A Fresh Take on

I'm currently using this slideshow for a project, and I need to understand if it's possible to resume its interval. The current issue is that when you hover over the slideshow, the progress bar stops. But once you remove the mouse, it continues f ...

Challenges with Table and <p> Spacing in HTML and CSS

My website is centered around tables. The body section of my site aligns with the bottom of the header nav bar. However, when I begin typing text in the body, it shifts down by a few pixels. Here are some examples: Before typing any text: After entering ...

Guide to setting the first tab as the default tab using Thymeleaf, Css, and Bootstrap

I am currently working on a project where I need to dynamically create tabs based on a list retrieved from my Spring backend using Thymleaf and Bootstrap. While I have managed to successfully create the tabs and content, I am facing an issue where the fi ...

React Redux Material Design auto suggest suggestion box

Is anyone else encountering difficulties extracting values from Material-ui Autocomplete while using redux-form? I followed the example on the material-ui Autocomplete https://material-ui.com/components/autocomplete/. I can see the list options and they ...

Deactivate the collapse event for the initial item in the MUI tree

Currently working with v5 MUI, I need to know how to prevent the collapse event of the first item? https://i.stack.imgur.com/VYydq.png Similar to ALL shown in the image above also, must eliminate the dropdown icon like the list item depicted in the pic ...

What is causing the border-bottom in these inline divs to not display when using a fractional height? (Specifically in Chrome)

Here is a jsfiddle I'd like to share with you: https://jsfiddle.net/ionescho/4d07k799/4/ The HTML code: <div class='container'> <div class="row"></div><div class="row"></div><div class="row"></div> ...

The background image for a pseudo element is not functioning as expected

After researching various solutions on Stack Overflow, I attempted to set fixed dimensions for the pseudo element (height: X px; width: X px;), but this is not an ideal solution for me as I require a scalable and responsive image that fits its parent eleme ...

Designing versatile buttons with HTML

When accessing the website on a phone, I have trouble seeing and tapping on these two buttons because they are too far apart. I would like to change it so that once a file is selected, the 'choose file' button will be replaced by the upload butto ...

Material-ui table triggers onClick function multiple times instead of just once

One major issue that I am facing is that whenever I click on an object in the table, the onClick function is triggered for all objects instead of just the clicked one. My desired behavior is to display "Tutorial full info" only below the clicked object. Be ...

Reset checkboxes in Material UI data grid

Currently, I am immersed in a React Js project that involves various tabs, each containing a unique data grid table with rows featuring checkboxes. Issue: Whenever I select a row from Table 1 and navigate to Tab 2 before returning to Tab 1, the checkboxes ...

Close button for body

I have created a form that floats in the center of the screen On this form, I have included a button designed to close it However, I would like for the form to be closed anywhere on the screen when clicked with the mouse Here is my code: $(".offer-clo ...

Ways to create a responsive Instagram iframe without using JavaScript

Currently, I am attempting to create a responsive grid featuring Instagram posts. Unfortunately, the padding-bottom hack isn't effective for my particular situation. After some experimentation, I discovered that the height could be calculated by addin ...

Dynamic SVG positioning

Looking for a way to make this svg shape relative to its containing div? Fiddle: http://jsfiddle.net/8421w8hc/20/ <div> <svg viewBox="0 0 1000 2112" style="" xmlns="http://www.w3.org/2000/svg" version="1.1"> <path id="ma" st ...

Tips for customizing buttons in material-ui

Hey there! I'm looking to customize three buttons with different colors, but when they are disabled, the custom style overrides the default disabledTextColor. This default styling adds a fade and transparency value to indicate that the button is disab ...

Having trouble retrieving props from the useStyles material-ui function

I'm attempting to utilize my current index in the useStyles hook to determine the display of my component based on this index. Here is my code snippet: const useStyles = makeStyles(theme => { console.log(theme); return { root: { flex ...

Video with dynamic sizing doesn't adapt properly

I successfully achieved my main goal, which was to have a background video at the top of my page. However, I am facing an issue with making the video responsive. Currently, as I decrease the screen size, the video shrinks in both width and height rather th ...

Will material-ui 1.0 be incorporating the same API as version .18?

Embarking on an app project using material ui .18, noticing the imminent release of version 1.0. Curious about their plans for supporting the current API. Any insights? ...

Ensuring Consistent Vertical Spacing for CSS-Animated Bootstrap 5 Navbar Toggler Buttons in All Browsers

After watching a tutorial on implementing a custom Navbar toggler button in Bootstrap 5, I decided to try it out myself. However, I encountered an issue with the spacing between the three bars that make up the toggler button - the spacing looked different ...

Modifying an HTML list item to become 'active' in a navigation bar

One way I've been implementing my navbar on each page is by using the following code at the bottom of the page within script tags: $("#navbar-partial").load("navbar.html). The code for the navbar list looks like this: <ul id="main-nav" class="nav ...

Steps to apply styles to an iframe element directly from its inner HTML code

Looking for help with this line of code: <iframe src="http://www.google.com" name="google" style="Z-INDEX: 0; MARGIN-TOP: -1px; WIDTH: 100%; HEIGHT: 1070px"> <html> <head></head> <body> < ...