#pragma once #include class HTMLElement : public Element { public: HTMLElement(Document&, const String& tag_name); virtual ~HTMLElement() override; String title() const { return attribute("title"); } private: virtual bool is_html_element() const final { return true; } }; template<> inline bool is(const Node& node) { return node.is_html_element(); }