Require attribute to be used in correct context

Rule ID:
attribute-misuse
Category:
Content model
Standards:
  • HTML5

Some attributes have usage requirements, for instance:

Rule details

Examples of incorrect code for this rule:

<a target="_blank">
<button type="button" formaction="post">
<meta name=".." http-equiv="..">
error: "target" attribute cannot be used on <a> in this context: requires "href" attribute to be present (attribute-misuse) at inline:1:4:
> 1 | <a target="_blank">
    |    ^^^^^^
  2 | <button type="button" formaction="post">
  3 | <meta name=".." http-equiv="..">


error: "formaction" attribute cannot be used on <button> in this context: "type" attribute must be "submit" (attribute-misuse) at inline:2:23:
  1 | <a target="_blank">
> 2 | <button type="button" formaction="post">
    |                       ^^^^^^^^^^
  3 | <meta name=".." http-equiv="..">


error: "name" attribute cannot be used on <meta> in this context: cannot be used at the same time as "http-equiv" (attribute-misuse) at inline:3:7:
  1 | <a target="_blank">
  2 | <button type="button" formaction="post">
> 3 | <meta name=".." http-equiv="..">
    |       ^^^^


error: "http-equiv" attribute cannot be used on <meta> in this context: cannot be used at the same time as "name" (attribute-misuse) at inline:3:17:
  1 | <a target="_blank">
  2 | <button type="button" formaction="post">
> 3 | <meta name=".." http-equiv="..">
    |                 ^^^^^^^^^^


4 errors found.

Examples of correct code for this rule:

<a href=".." target="_blank">
<button type="submit" formaction="post">
<meta name=".." content="..">
<meta http-equiv=".." content="..">

Version history