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...

相關文章
相關標籤/搜索