为什么必须编码HTML特殊字符?

时间:2018-11-09 08:12:48

标签: html utf-8 html-encode

我确定答案是微不足道的(或某些历史遗留的原因),但我想知道为什么我们需要对HTML特殊字符(如€,ä用html进行编码),如果浏览器可以显示他们原样。当然,像<,>,','之类的字符必须表示html标签的开头,必须进行编码/转义。

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
  </head>
  <body>
    &lt; <!-- this must be encoded as < represents a start of a html tag-->
    € <!-- why does this symbol needs to be html encoded, as browser with utf-8 charset displays it ok -->  
    파일 선택 <!-- not html encoded, as is -->
    ä -> &#228;
  </body>
</html>

编辑

相关问题:

1 个答案:

答案 0 :(得分:1)

  

为什么我们需要在HTML中对€,ä等HTML特殊字符进行编码

您没有,我不确定是什么让您认为自己必须这样做。如果您更喜欢以转义的HTML格式编写这些代码,则这只是一个选择。

请注意,您要做需要以某种方式指定HTML页面本身的编码,这是在示例中使用<meta>标记完成的。这就是确定这些“扩展”字符(在本例中为UTF8字符)含义的原因。