html The role inside is essentially to enhance the semantics. When the existing HTML tags cannot fully express the semantics, you can use role to explain it. Usually this happens with some customized components, which can enhance the accessibility, usability and interactivity of the components.
The role of role is to describe the actual role of a non-standard tag. For example, if p is used as a button, then if p's role="button" is set, the auxiliary tool can recognize that it is actually a button
For example,
<p role="checkbox" aria-checked="checked"></p>
#The auxiliary tool will know that this p is actually a checkbox character and is in the selected state.
role is barrier-free reading, which is an attribute set for people with dyslexia. People with dyslexia can use screen reading software to analyze it. , has little to do with normal people. You don't have to set it up. If you don't set it up, the screen reading software won't be able to parse it, and people with dyslexia won't be able to "read" it.
Since it is a good programming habit, is it better to write role in all tags?
For example,
<p role = "p"></p>
Normal text can be read, but sometimes there is no password prompt in front of the password input box in the form. The prompt is written in the box with Placeholder. , normal people know to enter the password here, but cannot read it, then this thing will work.
The attribute role exists to tell Accessibility applications (such as screen reading programs, convenient programs for blind people to access the Internet) that this is a button. In the HTML5 element, the tag itself has semantics, so there is no need to add role, at least it is not recommended. However, many bootstrap cases have similar attributes and declarations in order to be compatible with older versions of browsers. (User Agent), if your code uses html5 tags and is not going to support older versions of browsers, you might as well not use the role tag.
For more related articles, please pay attention to the PHP Chinese website!