title: How to make browsers load Japanese fonts for CJK text, instead of Chinese fonts
body: <p>I have an XHTML1.1 document with a mix of English and Japanese text, with charset indicators <code>lang=&quot;jp&quot;</code> and <code>xml:lang=&quot;jp&quot;</code> in the opening tag for the <code>&lt;html&gt;</code> element. The actual content is encoded in UTF-8, and this is stated in the content-type as well:</p>
  <pre><code>&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.1//EN&quot;
      &quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&quot;&gt;
  &lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;jp&quot; lang=&quot;jp&quot;&gt;
  &lt;head&gt;
      &lt;title&gt;Test page&lt;/title&gt;
      &lt;meta http-equiv=&quot;Content-Type&quot;
        content=&quot;application/xhtml+xml; charset=utf-8&quot;/&gt;
  &lt;/head&gt;
  &lt;body&gt;&lt;div&gt;今&lt;/div&gt;&lt;div&gt;込&lt;/div&gt;&lt;/body&gt;&lt;/html&gt; 
  </code></pre>
  <p>The XML/HTML specs say that the &quot;lang&quot; attribute is inherited, so the content should end up being rendered with a font that supports Japanese, but instead I'm seeing it use fonts that are intended for Chinese. (Japanese &quot;kanji&quot; are actually subtly different in many cases from the equivalent Chinese &quot;Hanzi&quot;, and wildly different for a few common characters.)</p>
  <p>For instance, in the above code the top part of the first character should be ˄ with a - under it. If a Chinese font is used instead, this character will invariably instead look like a ˄ with ` underneath. Also, the second character should have a shape that looks like 7\, but when a Chinese font is used it will more often look like a lambda, λ. Neither of these are correct print/screen forms in Japanese.</p>
  <p>The question: is there a way to force browsers to pick Japanese fonts for CJK text without writing a CSS rule that just contains a hundred and one font names in the hopes that at least one of them will match what the user has installed?</p>
  <p>(Since minimal CJK fonts are along the lines of &gt;4MB, with complete ones more around 15~20MB, relying on an @font-face declaration to ensure the right font gets loaded would be slow.)</p>
  <p>I'd like a solution that works in all major browsers.</p>