

[Tutorial: Using Thymeleaf
(ja)](https://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf_ja.html)

下記引用にHTMLが（ブラウザが？）無視してくれるという記述があります。

引用:

>
> スタンダードダイアレクトの大半のプロセッサは「属性プロセッサ」です。属性プロセッサを使用すると、XHTML/HTML5テンプレートファイルは処理前であってもブラウザで正しく表示することができます。単純にその属性が無視されるからです。例えば、タグライブラリを使用したJSPだとブラウザで直接表示できない場合がありますが:  
>  `<form:inputText name="userName" value="${user.name}" />`  
>  Thymeleafスタンダードダイアレクトでは同様の機能をこのように実現します:  
>  `<input type="text" name="userName" value="James Carrot"
> th:value="${user.name}" />`  
>  ブラウザで正しく表示できるだけでなく、(任意ですが)value属性を指定することもできます(この場合の “James Carrot”
> の部分です)。プロトタイプを静的にブラウザで開いた場合にはこの値が表示され、Thymeleafでテンプレートを処理した場合には ${user.name}
> の評価結果値で置き換えられます。

属性にコロンを使った `th:value` の書き方は見慣れないのですが、HTMLのどういった仕様がこれを無視してくれるのでしょうか？


CC BY-SA 4.0
2020-06-27T13:56:33.000
68060
2020-06-28T05:20:53.187
9008
question
html thymeleaf
Thymeleafのth属性はなぜHTMLが無視できるようになっているのでしょうか？HTMLのどの仕様でしょうか？


Spring BootとThymeleafの組み合わせで実現されているもので、HTMLの仕様によるものではありません。

[4.1. テンプレートエンジン(Thymeleaf)](https://macchinetta.github.io/server-guideline-
thymeleaf/current/ja/ArchitectureInDetail/WebApplicationDetail/Thymeleaf.html#id7)
の記事をじっくりと読まれることをお勧めします。

記事の4.1.1.3節で図示されているように、リクエストを受けてから、レスポンスを返すまでに、様々な処理が行われるのです。


CC BY-SA 4.0
2020-06-28T05:20:53.187
68073
2020-06-28T05:20:53.187
217
68060
answer