GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing html-validate.org — HTML-validate HTML-validateOffline HTML5 validator. Validates either a full document or a smaller (incomplete) template, e.g. from an AngularJS or Vue.js component. FeaturesFragments and componentsIn addition to validating plain Neither Transformed sources can also be postprocessed to handle data-bindings from different frameworks, e.g. Learn more about transforming sources. OfflineMany validators will behind the scene upload the markup to online services such as W3C. HTML-validate performs all validation locally, no markup leaves your machine, providing a faster and more secure response which can easily be integrated with tools and IDEs. This means your source code is safe and is never leaked outside of your organization. Strict parsingWhen rendering a document it is useful to try to correct malformed markup but a validator should be strict. No corrections, assumptions or guessing is done. If the markup is invalid the parser will tell you so. By ensuring the markup is strictly valid it reduces the amount of bugs where different browsers autocorrect the markup differently (this is especially true for mobile browsers). HTML5 content modelEach element is matched against metadata for deeper logic and analysis such as whenever an element is allowed in the current context or if a required element is missing.
Learn more about writing element metadata for custom components. Accessibility testsValidates technical aspects of A11Y guidelines such as WCAG 2.2. ExtendableWrite your own element metadata, rules and/or business logic. Write your own shareable configurations or plugins. Learn more about writing rules and writing plugins. FrameworksFirst-class support for: ExamplesContent model
error: Element <legend> must be used before <p> in this context (element-permitted-order)
2 | <fieldset>
3 | <p>Lorem ipsum dolor sit amet</p>
> 4 | <legend>Consectetur adipiscing elit</legend>
| ^^^^^^
5 | </fieldset>
6 |
7 | <main>
error: <main> element is not permitted as a descendant of <footer> (element-permitted-content)
5 | </fieldset>
6 |
> 7 | <main>
| ^^^^
8 | <blink>(c) 2018 Initech</blink>
9 | </main>
10 | </footer>
error: <blink> is deprecated (deprecated)
6 |
7 | <main>
> 8 | <blink>(c) 2018 Initech</blink>
| ^^^^^
9 | </main>
10 | </footer>
3 errors found.
Accessibility
error: <img> is missing required "alt" attribute (wcag/h37)
> 1 | <img src="logo.png" />
| ^^^
2 | <button onclick="myFunction();">Click me!</button>
3 |
4 | <div class="field-wrapper">
error: <button> is missing recommended "type" attribute (no-implicit-button-type)
1 | <img src="logo.png" />
> 2 | <button onclick="myFunction();">Click me!</button>
| ^^^^^^
3 |
4 | <div class="field-wrapper">
5 | <strong>Name: </strong>
error: <input> element does not have a <label> (input-missing-label)
4 | <div class="field-wrapper">
5 | <strong>Name: </strong>
> 6 | <input type="text" name="name" />
| ^^^^^
7 | </div>
3 errors found.
Custom components
error: <my-block> element is not permitted as content under <my-inline> (element-permitted-content)
1 | <my-inline>
> 2 | <my-block></my-block>
| ^^^^^^^^
3 | <my-deprecated></my-deprecated>
4 | </my-inline>
error: <my-deprecated> is deprecated: replaced with <my-other> (deprecated)
1 | <my-inline>
2 | <my-block></my-block>
> 3 | <my-deprecated></my-deprecated>
| ^^^^^^^^^^^^^
4 | </my-inline>
2 errors found.
|
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |