# vue/no-restricted-html-elements

disallow specific HTML elements

# 📖 Rule Details

This rule allows you to specify HTML elements that you don't want to use in your application.

<template> <!-- ✓ GOOD --> <p></p> <input /> <br /> <!-- ✗ BAD --> <button></button> <marquee></marquee> </template>
Now loading...

# 🔧 Options

This rule takes a list of strings, where each string is an HTML element name to be restricted:

{
  "vue/no-restricted-html-elements": ["error", "button", "marquee"]
}
<template> <!-- ✗ BAD --> <button></button> <marquee></marquee> </template>
Now loading...

Alternatively, the rule also accepts objects.

{
  "vue/no-restricted-html-elements": [
    "error",
    {
      "element": "button",
      "message": "Prefer use of our custom <AppButton /> component"
    },
    {
      "element": "marquee",
      "message": "Do not use deprecated HTML tags"
    }
  ]
}

The following properties can be specified for the object.

  • element ... Specify the html element.
  • message ... Specify an optional custom message.

# { "element": "marquee" }, { "element": "button" }

<template> <!-- ✗ BAD --> <marquee></marquee> <button></button> </template>
Now loading...

# 🚀 Version

This rule was introduced in eslint-plugin-vue v8.6.0

# 🔍 Implementation