No byte-order mark
User guide
- Getting Started
Api
Concepts
Configurations
Configuring webhint
Connectors
Development flow integration
Extensions
Formatters
Hints
- Avoid CSS limits
- Avoid HTTP redirects
- axe accessibility check
- Babel configuration hint set
- Compatibility of CSS, HTML and JavaScript features
- Correct `Content-Type` header
- Correct manifest extension
- Correct viewport
- Detect CSS Reflows
- Disallowed HTTP headers
- External links disown opener
- Has web app manifest
- Highest document mode
- HTTP cache
- Leading '.' in `classList.add` or `classList.remove`
- Manifest has name
- Minify JavaScript
- Modern DOCTYPE
- No `createElement` with SVG
- No `P3P` headers
- No broken links
- No byte-order mark
- No Inline CSS Styles
- No protocol-relative URLs
- No small error pages
- No vulnerable libraries
- Nu HTML test
- Optimal compression
- Optimize images
- Performance budget
- Prefixed CSS first
- scoped-svg-styles
- Specify button type
- SSL server test
- TypeScript configuration hints set
- Unneeded HTTP headers
- Use `Strict-Transport-Security` header
- Use `X-Content-Type-Options` header
- Use Apple touch icon
- Use charset `utf-8`
- Use HTTPS
- Use subresource integrity
- Valid `Set-Cookie` header
- Valid `theme-color`
- Valid manifest
- webpack configuration hints set
Parsers
Server configurations
Troubleshoot
- Api
- Concepts
- Configurations
- Configuring webhint
- Connectors
- Development flow integration
- Extensions
- Formatters
- Hints
- Parsers
- Server configurations
- Troubleshoot
No byte-order mark (no-bom
)
no-bom
warns against having the byte-order mark (BOM) character
at the beginning of a text file.
Why is this important?
Having the BOM character at the beginning of a file over the internet
(especially HTML) can have some bad side effects on some browsers.
The BOM character can be used to indicate the charset of the content
is UTF-8
but this doesn’t mean it will be considered. For example,
Internet Explorer 10 and 11 give a higher precedence to the HTTP header
while previous versions gave the precedence to BOM for the encoding.
You can learn about other problems in this section.
What does the hint check?
This hint checks that all text-based media type files are served without the BOM character at the beginning.
Examples that trigger the hint
A text file (such as HTML) that starts with the BOM character U+FEFF
will fail.
Examples that pass the hint
A text file (such as HTML) that doesn’t start with the BOM character
U+FEFF
will pass.
How to use this hint?
This package is installed automatically by webhint:
npm install hint --save-dev |
To use it, activate it via the .hintrc
configuration file:
{
"connector": {...},
"formatters": [...],
"hints": {
"no-bom": "error",
...
},
"parsers": [...],
...
} |
Note: The recommended way of running webhint is as a devDependency
of
your project.