# 1.2 Thymeleaf能处理什么类型的模版？

开箱即用，Thymeleaf允许你处理六种模版，每一种称为一种**模版模式**：

* HTML
* XML
* TEXT
* JAVASCRIPT
* CSS
* RAW

两种标记模版模式（HTML和XML），三种文本模版模式（TEXT，JAVASCRIPT和CSS），以及一种无操作模版模式（RAW）。

HTML模版模式允许任何的HTML输入，包括HTML5，HTML 4和XHTML。不会进行验证或者良构性的检查，同时模版代码/结构将会得到输出中最大可能性的扩展的尊重。

XML模版模式允许XML输入。在这种情况下，代码需要结构良好——没有未闭合的标签，没有未用引号包围的属性，等等。如果找到违反良构性的地方，解析器将抛出异常。注意⚠️不会执行验证（违反DTD或者XML模式）。

TEXT模版模式允许为无标记类型的模版，使用一种特殊的语法。这样的模版的例子可以是文本邮件或者模板化的文档。注意⚠️HTML或者XML模版也可以当做TEXT来处理。在这种情况下，它们不会被当做标记来解析。同时，每一个标签、文档类型、注释，等等，将仅仅被当作文本。

JAVASCRIPT模版模式允许在Thymeleaf应用里处理JavaScript文件。这意味着可以像HTML一样，在JavaScript文件里面使用模型数据，但是需要JavaScript特定的集成，比如专门的转义或者自然的脚本编写。JAVASCRIPT模版模式被认为是一种文本模式，因此使用和TEXT模版模式一样的特别语法。

CSS模版模式允许处理在Thymeleaf应用里的CSS文件。与JAVASCRIPT模式类似，CSS模版模式也是一种文本模式，使用来自于TEXT模版模式的特别的处理语法。

RAW模版模式不会处理模版。它被用于在要处理的模版中，插入未受影响的资源（文件，URL资源，等等）。比如，在HTML格式里，外部的、未受控制的资源可以被包含进应用模版。这些资源包含的任何Thymeleaf代码将不会被执行。
