What does this HTML validator actually check?
Tag open/close matching using a stack, void-element handling (br, img, hr, input, meta, link, source, track, wbr — never need a close tag), deprecated tag detection (font, center, marquee, big, strike, tt, u, frame, frameset, dir, acronym, xmp), <img> elements missing the alt attribute, and unquoted id/class/src/href attribute values. It also reports document-level facts: DOCTYPE presence, title, and counts of scripts, links, images, and forms.
Is this the W3C HTML validator?
No. The W3C Markup Validator is the canonical conformance checker against the full HTML5 specification. This tool is a quick browser-side sanity check for the most common structural mistakes — useful when the W3C validator is overkill or when you cannot upload your markup.
Why does it warn about <img> missing alt?
The HTML specification requires alt on <img> for accessibility — screen readers cannot describe the image without it. Decorative images should still carry alt="" (empty string) to signal "skip this". This validator flags any <img> with no alt attribute at all.
How does it handle void elements like <br> and <img>?
Void elements never need a closing tag in HTML5. The validator recognises area, base, br, col, embed, hr, img, input, link, meta, param, source, track, and wbr — and does not push them onto its tag-matching stack. Both <br> and <br/> are accepted; the trailing slash is XHTML legacy and HTML5 ignores it.
What deprecated tags does it flag?
It flags acronym, big, center, dir, font, frame, frameset, marquee, strike, tt, u, and xmp. These were removed or made obsolete in HTML5. Use semantic alternatives: <strong>/<em> instead of <b>/<i> when meaning matters; CSS for visual styling instead of <font> or <center>; <iframe> instead of <frame>; and <abbr> instead of <acronym>.
Does it validate inline CSS or JavaScript?
No. Content inside <style> and <script> is treated as opaque text. For CSS use a CSS validator; for JavaScript run the JS Beautifier or a JS linter. This tool focuses on HTML structure only.
Can it validate an HTML fragment without <html> and <body>?
Yes. The validator checks tag matching on whatever you paste. DOMParser will wrap fragments in a synthetic body for parsing, so element counts will reflect that, but tag-mismatch detection works on the raw input.
Is my HTML uploaded for validation?
No. Validation runs entirely in your browser using DOMParser and a regex tag scanner. Page source containing internal layouts, hidden form fields, or proprietary markup never leaves your device. Verify in DevTools → Network: clicking Validate produces no requests.