sublime text3中使用Emmet部分标签没法闭合

转载自:http://geek100.com/2490/html

不过很早就发现br,input, img在sublime text中是没有闭合标签 / 的. 我通常都是手动补上的, 今天忽然想起这个问题, 因此想把缘由搞清楚.json

一. 觉得是snippets.json的配置有问题

咱们知道, sublime text中的emmet自动补全是有个配置文件来决定每一个标签的补全代码是怎么样的.编辑器

因此我首先想到的是去查看这个文件:3d

点击'browse packages' –> Emmet –> emmet –> snippets.json, 发现里面的input, img 和 meta等标签都是有 / 的. 可是在编辑器里运行就没有了. 想一想也是, emmet用的人这么多, 不可能犯这种低级错误.htm

二. 真正的缘由: 不一样的doctype

因而继续在网上搜索一番, 发现 / 消失的缘由是不一样的doctype引发的:blog

1. 只有在html:xt, 也就是XHTML 1.0 模式下 / 才会出现;ip

2. 在其余模式, 即便是html:5 <!doctype html>下面 / 也是没有闭合的. 我猜是由于HTML5没有严格的要求input img等标签闭合仍是不闭合.input

三. 如何解决: 让全部doctype下 / 都出现, input img等标签都闭合?

了解了缘由后, 修改就简单了:配置

点击以下地方,file

添加以下代码:

{
      "syntaxProfiles": {
          // Enable XHTML dialect for HTML syntax
          "html": "xhtml"
      }
}

大功告成...

从这个小细节也能够看出Emmet做者是个知识丰富, 考虑问题全面的人, 牛X...

相关文章
相关标签/搜索