我可以在没有后备的情况下使用HTML实体吗?

时间:2015-05-07 08:43:14

标签: html utf-8

我想知道,如果我可以使用像

这样的html实体
<h5><em>⇆</em> Headline</h5>
如果我使用utf-8,

没有任何后备? (因为在我的系统上,这完全没问题)。这些来自http://dev.w3.org/html5/html-author/charref的字符是否都默认嵌入到utf-8-charset中?

我将如何正确使用它,如下所示:

<h5><em>⇆</em> Headline</h5>

<h5><em>&lrarr; </em> Headline</h5>

<h5><em>&#8646;</em> Headline</h5>

1 个答案:

答案 0 :(得分:1)

这里有两个不同的问题:

  1. 让浏览器了解您想要的字符
  2. 直观地渲染该角色
  3. 首先,有两个选择:

    1. 按原样直接嵌入字符,您需要以可编码该字符的编码提供HTML。是的,&#34;⇆&#34;是一个Unicode字符,可以通过任何Unicode编码进行编码。 UTF-8是这里的最佳选择。然后,浏览器只需要了解文档是以UTF-8编码的,它将能够正确地读取和理解字符。 Set the appropriate HTTP header to denote the encoding.
    2. 将角色嵌入为HTML实体。 HTML实体是一种仅使用ASCII字符嵌入任意字符的方法,例如&lrarr;。要对此进行编码,您选择的编码只需要能够对&lra;进行编码,这些都是非常标准的字符在任何编码。浏览器将这种特殊的字符序列理解为字符&#34;⇆&#34;。通过将字符嵌入为HTML实体,您可以在很大程度上忽略正确管理编码的复杂性,但这会使您的源代码难以理解。你不应该在这个时代这样做。

      您是否使用命名实体&lrarr;)或通过其Unicode代码(&#8646;)引用该字符并不重要,它们都会导致同样的事情。

    3. 处理完之后,角色需要在屏幕上实际呈现作为字形。为此,需要适当的字体。您必须测试大多数目标受众是否使用默认情况下安装了包含此字符的字体的系统。您还可以将自己的字体提供给包含此字符的浏览器web font