author Tyler Kabaker <kabakert@msu.edu>
Sun, 16 Jan 2022 21:09:07 +0000
changeset 604640 fd384d84f3d05d364a74fa6967e416767c8e8759
parent 216659 f642698590301f923237de6d2479429096b61edd
permissions -rw-r--r--
Bug 1747402 - Added check for when time value is less than zero in getFormattedTimeStatus. r=mtigley Differential Revision: https://phabricator.services.mozilla.com/D136065

<!DOCTYPE html>
<html  lang="en" >
 <meta charset="iso-8859-15"> <title>UTF-8 BOM vs meta charset</title>
<link rel='author' title='Richard Ishida' href='mailto:ishida@w3.org'>
<link rel='help' href='https://html.spec.whatwg.org/multipage/#the-input-byte-stream'>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<meta name='flags' content='http'>
<style type='text/css'>
.test div { width: 50px; }.test div { width: 90px; }
<link rel="stylesheet" type="text/css" href="support/encodingtests-utf8.css">

<div class='test'><div id='box' class='ýäè'>&#xA0;</div></div>


The page contains an encoding declaration in a meta charset attribute that attempts to set the character encoding to ISO 8859-15, but the file starts with a UTF-8 signature.

The test contains a div with a class name that contains the following sequence of bytes: 0xC3 0xBD 0xC3 0xA4 0xC3 0xA8. These represent different sequences of characters in ISO 8859-15, ISO 8859-1 and UTF-8. The external, UTF-8-encoded stylesheet contains a selector <code>.test div.&#x00FD;&#x00E4;&#x00E8;</code>. This matches the sequence of bytes above when they are interpreted as UTF-8. If the class name matches the selector then the test will pass.

test(function() {
assert_equals(document.getElementById('box').offsetWidth, 100);
}, "A page with a UTF-8 BOM will be recognized as UTF-8 even if the meta charset attribute declares a different encoding.");

<div id='log'></div>