IDEA软件格式化代码HTML ctrl + shift + F总出问题

IDEA软件格式化代码HTML ctrl + shift + F总出问题

问题描述:

格式化HTML代码就会把标签里面th搞没了

<html lang="en" xmlns:th="http://www.thymeleaf.org">

最后就变成了

<html lang="en">

为什么thymeleaf的就没了呢?怎么解决这个问题呢

应该是你开启了智能代码,并且勾选了自动完成修改选项,而实际与预置规范有出入所致。(否则会提示报告具体的警告或错误)

因此,解决方法一:

禁用自动完成修改功能选项,然后根据自动检查代码给出提示进行修改。(此时,例如会提示报未使用的th元素标签的警告;或者报th:href命名空间不存在的错误)

方法二:直接补充完整html根元素的命名空间声明

<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-4.dtd">

<html lang="en" xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org">
<html>

如果使用spring,可以使用以下代码:

<!DOCTYPE html SYSTEM "http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd">

<html lang="en" xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org">
<html>