Attribute
An attribute extends an {{Glossary("HTML")}}
or {{Glossary("XML")}}
{{Glossary("element")}}
, changing its behavior or providing metadata.
An attribute always has the form name="value"
(the attribute’s identifier followed by its associated value). You may see attributes without an equals sign or a value. That is a shorthand for providing the empty string in HTML. However, this is not valid in XML: XML requires all attributes to have an explicit value.
A number of HTML attributes are {{Glossary("Boolean/HTML", "boolean attributes")}}
. These attributes’ values are only controlled by the presence or absence of the attribute. See {{Glossary("Boolean/HTML", "boolean attributes")}}
for more information.
Reflection of an attribute
Attributes may be reflected into a particular property of the specific interface.
This means that the value of the attribute can be read or written directly in JavaScript through a property on the corresponding interface, and vice versa.
The reflected properties offer a more natural programming approach than getting and setting attributes using the {{domxref("Element.getAttribute()","getAttribute()")}}
and {{domxref("Element.setAttribute()","setAttribute()")}}
methods of the {{domxref("Element")}}
interface.
For more information see Attribute reflection.
See also
- HTML attribute reference
- Attribute reflection
- Information about HTML’s global attributes
- XML StartTag Attribute Recommendation in W3C XML Recommendation
- Related glossary terms:
{{Glossary("Element")}}
{{Glossary("Tag")}}
{{Glossary("HTML")}}
{{Glossary("XML")}}
{{Glossary("Boolean/HTML", "Boolean attributes")}}
{{Glossary("Enumerated", "Enumerated attributes")}}