Emmet 是高效、快速编写 HTML 和 CSS 代码的一种插件,若是还不了解,请戳Emmet — the essential toolkit for web-developers,再根据你使用的编辑器(Sublime 或 vim 等)下载对应的 Emmet 插件,Visual Code直接支持Emmet语法。html
编辑器使用Visual Code,下载地址访问https://code.visualstudio.com/,新建一个HTML文件,并保存。web
HTML 文档的初始结构,就是包括 doctype、html、head、body 以及 meta 等内容。你只须要输入一个 “!” 就能够生成一个 HTML5 的标准文档初始结构,你没有看错,输入一个感叹号(固然是英文符号),而后按 “Tab” 键便会生成代码,就会发现生成了下面的结构:vim
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> </body> </html>
这就是一个 HTML5 的标准结构,也是默认的 HTML 结构。若是你想生成 HTML4 的过渡型结构,那么输入指令 html:xt,而后按 “Tab” 键, 便可生成以下结构:编辑器
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>Document</title> </head> <body> </body> </html>
Emmet 会自动把 doctype 给你补全了,怎么样,这样的功能会不会让你动心?简单总结一下经常使用的 HTML 结构指令:ui
例如输入 p 按 tab 则 生成:<p></p>spa
例如输入 div#header.section 则生成插件
<div id="header" class="section"></div>
例如输入p>span 则生成 code
<p><span></span></p>
+
例如输入p+div 则生成xml
<p></p><div></div>
例如输入ul>li>a^div 则生成htm
<ul> <li><a href=""></a></li> <div></div> </ul>
也能够使用多个 ^,例如输入ul>li>a^^div 则生成
<ul> <li><a href=""></a></li> </ul> <div></div>
例如输入ul>li*5 则生成
<ul> <li></li> <li></li> <li></li> <li></li> <li></li> </ul>
例如输入ul>(li>a)*5 则生成
<ul> <li><a href=""></a></li> <li><a href=""></a></li> <li><a href=""></a></li> <li><a href=""></a></li> <li><a href=""></a></li> </ul>
注意和ul>li>a*5 生成是不同的
<ul> <li> <a href=""></a> <a href=""></a> <a href=""></a> <a href=""></a> <a href=""></a> </li> </ul>
例如输入img[http://www.cnblogs.com/images/logo_small.gif][alt=www.cnblogs.com] 则生成
<img src="http://www.cnblogs.com/images/logo_small.gif" alt="www.cnblogs.com" />
例如输入ul>li.item$*5 则生成
<ul> <li class="item1"></li> <li class="item2"></li> <li class="item3"></li> <li class="item4"></li> <li class="item5"></li> </ul>
例如输入ul>li.item$$$*5 则生成
<ul> <li class="item001"></li> <li class="item002"></li> <li class="item003"></li> <li class="item004"></li> <li class="item005"></li> </ul>
想生成几位输入几个$
例如输入ul>li.item$@-*5 则生成
<ul> <li class="item5"></li> <li class="item4"></li> <li class="item3"></li> <li class="item2"></li> <li class="item1"></li> </ul>
例如输入ul>li.item$@10*5 则生成
<ul> <li class="item10"></li> <li class="item11"></li> <li class="item12"></li> <li class="item13"></li> <li class="item14"></li> </ul>
例如输入ul>li.item$@-10*5 则生成
<ul> <li class="item14"></li> <li class="item13"></li> <li class="item12"></li> <li class="item11"></li> <li class="item10"></li> </ul>
例如输入p{我是文字内容} 则生成
<p>我是文字内容</p>
声明一个带class的div 能够不用输入div;.header+.footer 则生成:
<div class="header"></div> <div class="footer"></div>
Emmet 还会根据父标签进行断定例如输入ul>.item*3 则生成:
<ul> <li class="item"></li> <li class="item"></li> <li class="item"></li> </ul>
下面是全部的隐式标签名称: