What is data attribute?
Any element whose attribute has a prefix (or starts with) a data-, is a data attribute. For example, I have few <div> elements and I'll add some extra information to each element, using the "data attribute".
<div class="emp" data-name="arun" data-empcode="cd001"> some text here... </div> <div class="emp" data-name="mark" data-empcode="cd0014"> some text here... </div> <div class="emp" data-name="charlie" data-empcode="cd003"> some text here... </div>
In the above example, I have defined two data attributes namely, "data-name" and "data-empcode" to each DIV element. So now, each element has a unique set to "data attributes".
👉 These extra information attached to an element will remain hidden, that is, it will not be displayed anywhere on the web page.
👉 The "data-*" attribute should have at-least one character, immediately after the "hyphen".
👉 The "data-*" attribute can hold any kind of value (numbers, decimal values, alphabets, special characters etc.) inside the double quotes.
👉 It can be used with any HTML element.
👉 The "data-*" attribute can be accessed using JavaScript. See this example.
How useful it is in actual scenarios? I think you should see this.