This test case checks the current browser's support for HTML elements currently defined in the specification as well as custom elements. It works by examining an element's constructor to see which interface it inherits from. Unsupported elements should derive from the
HTMLUnknownElement interface, revealing their lack of native support. Custom elements not registered via
document.registerElement should derive from the
HTMLElement interface or the
HTMLUnknownElement interface if an invalid tag name is used. This project can be found at https://github.com/ryanmorr/is-element-supported.