emmet 是一个提高前端开发效率的一个工具。
emmet允许在html、xml、和css等文档中输入缩写,然后按tab键自动展开为完整的代码片段。

一、Sublime Text 3 安装插件Emmet
点击菜单栏的首选项
->Package Control
-> 在弹出命令行中输入ip,在列表中点击“install Package”
-> 弹出命令行输入框,输入“emmet”进行安装

本人安装完后提示
Error while loading PyV8 binary:exit code 4
Try to manually install PyV8 from
https://github.com/emmetio/pyv8-binaries
解决方法:
按提示打开https://github.com/emmetio/pyv8-binaries,选择自己版本下载pyv8,本人下载pyv8-win64-p3.zip。
点击Sublime Text 3菜单栏的首选项->浏览插件目录,打开Packages目录,再切换到上一层Installed Packages目录,
新建目录PyV8,把pyv8-win64-p3.zip解压后的文件放进去,重启ST编辑器。

二、emmet的用法
emmet插件的官方文档: https://docs.emmet.io/abbreviations/syntax/

新建一个html文件
1、元素
可以使用元素的名称(如DIV或P)生成HTML标记。
如输入div按tabl键后,自动生成<div></div>。
如果输入!,则自动生成一个HTML5基本结构

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body> </body>
</html>

2、嵌套操作符
(1)子元素:>

<!-- div>ul>li -->

<div>
<ul>
<li></li>
</ul>
</div>

备注:div>ul>li的中间和后面不能有空格,否则按tab键后emmet 会停止解析,后面的例子也一样不能有空格。

(2)兄弟元素:+

<!-- div+p+bq --> -->

<div></div>
<p></p>
<blockquote></blockquote>

(3)向上一层:^,和>相反,可以多次使用

<!-- div+div>p>span+em -->

<div></div>
<div>
<p><span></span><em></em></p>
</div> <!-- div+div>p>span+em^^^bq --> <div></div>
<div>
<p><span></span><em></em></p>
</div>
<blockquote></blockquote>

(4)乘法:*,重复指定次数生成元素

<!-- ul>li*5  -->

<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>

(5)分组:(),括号里面的内容为一个代码块,括号后面的元素与括号的第一个元素在同一级别

<!-- div>(header>ul>li*2>a)+footer>p  -->

<div>
<header>
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
</ul>
</header>
<footer>
<p></p>
</footer>
</div>

3、属性操作符

(1)id和class

<!-- div#header+div.page+div#footer.class1.class2.class3 -->

<div id="header"></div>
<div class="page"></div>
<div id="footer" class="class1 class2 class3"></div>

(2)自定义属性:[attr]

<!-- td[title="Hello world!" colspan=3] -->

<td title="Hello world!" colspan="3"></td>

(3)项目编号:$

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

使用任意个$在数字前加任意个0

<!-- ul>li.item$$*5 -->

<ul>
<li class="item01"></li>
<li class="item02"></li>
<li class="item03"></li>
<li class="item04"></li>
<li class="item05"></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>

指定开始的序号,在$后面加@N,N为开始的序号

<!-- ul>li.item$@3*5 -->

<ul>
<li class="item3"></li>
<li class="item4"></li>
<li class="item5"></li>
<li class="item6"></li>
<li class="item7"></li>
</ul>

4、文本:{},为元素添加文本

<!-- a{Click me} -->

<a href="">Click me</a>

因为文本也是节点,所以 a[href=1.htm]{click me} 与 a[href=1.htm]>{click me} 等价。

但是有多个元素时生成的结果会不同,用子元素>后面有元素时,也会放在a元素里面,例如

<!-- a{click}+b{here} -->

<a href="">click</a><b>here</b>

<!-- a>{click}+b{here} -->

<a href="">click<b>here</b></a>

emmet的用法的更多相关文章

  1. sublime Emmet的用法及相关语法

    本节来讲一下Emmet插件的用法及相关语法. Emmet插件极大的提高了编程员的编程速度,下面我们来讲讲它的具体语法: 一.生成 HTML 文档初始结构 HTML 文档的初始结构,就是包括 docty ...

  2. Web 前端利器Emmet 的HTML用法总结

    在tutsplus那里看到一篇文章介绍Emmet 的用法,形象的gif图片一目了然,本来想翻译过来的(虽然翻译用法倒不是很难),但搜索发现已经有国人翻译过了,遂直接拿来转载在这里. Emmet 简介 ...

  3. HTML代码简写法:Emmet和Haml

    http://www.ruanyifeng.com/blog/2013/06/emmet_and_haml.html?bsh_bid=657901854 HTML代码简写法:Emmet和Haml   ...

  4. HTML的快速写法:Emmet和Haml

    HTML代码写起来很费事,因为它的标签多. 一种解决方法是采用模板, 在别人写好的骨架内,填入自己的内容.还有一种就是我今天想要介绍的方法—-简写法. 常用的简写法,目前主要是Emmet和Haml两种 ...

  5. sublime text3中emmet插件的使用

    首先,想要快速编码需 要在编辑器中安装常用插件,下面是emmet插件的使用: html5文档结构的生成方式: 1).!+tab键 2).html:5 +tab键 头部head中meta字符集的生成: ...

  6. 工欲善其事必先利其器,用Emmet提高HTML编写速度

    HTML代码写起来很费事,因为它的标签多. 一种解决方法是采用模板,在别人写好的骨架内,填入自己的内容.还有一种很炫的方法----简写法. 常用的简写法,目前主要是Emmet和Haml两种.这两种简写 ...

  7. sublime + emmet(Zen Coding)

    今天接触sublime这个编辑器,一下子就喜欢上它了,以前我一直使用NOTEPAD++,果断换上sublime玩玩,呵呵 编辑功能啥的没话,作为前端开发的话,和emmet(原名叫Zen Coding) ...

  8. HTML代码简写法:Emmet和Haml(转)

    HTML代码写起来很费事,因为它的标签多. 一种解决方法是采用模板, 在别人写好的骨架内,填入自己的内容.还有一种就是我今天想要介绍的方法----简写法. 常用的简写法,目前主要是Emmet和Haml ...

  9. learn

    1.JQ (随时) 2.微信小程序(关注群,专栏知乎,自己申请一个小程序弄个实战) 3.支付宝小程序(2017.08.18 新生代 类似微信api) 4.vue(优秀的mvvm框架,手机端主流) 5. ...

随机推荐

  1. url编码本质

    url编码本质 其实url本质就是将中文字符串进行utf8编码,然后得到编码后的对象转换字符串去掉开头的b'以及末尾的',然后再将\x转换成%,再将里面内容x变成e最后将字符串小写变成大写 举例 #拿 ...

  2. 爬虫爬取m3u8视频文件

    一.m3u8视频格式 一般m3u8文件和 视频流ts文件放在同一目录 而m3u8文件格式存放的一般都是ts 文件的一个列表 二.根据m3u8视频存放以及写法的规律 思路 我们一般网站上能找到的m3u8 ...

  3. Add an Item to the Navigation Control 将项目添加到导航控件

    In this lesson, you will learn how to add an item to the navigation control. For this purpose, the N ...

  4. SSM框架之Mybatis(6)动态SQL

    Mybatis(6)动态SQL 1.动态SQL 出现原因:有些时候业务逻辑复杂时,我们的 SQL 是动态变化的,此时在前面的学习中我们的 SQL 就不能满足要求了 1.1.if标签 我们根据实体类的不 ...

  5. bay——巡检RAC命令_版本.txt

    df -lhhostnamecat /etc/hostsifconfig ps -ef | grep tnsps -ef | grep asmps -ef | grep ora_ ls -l /dev ...

  6. Oracle 统计表空间和对象历史增长量

    最近7天内 每天(某个)表空间的增长量 col TS_NAME for a15 SELECT a.snap_id, a.rtime, c.tablespace_name ts_name, round( ...

  7. python anaconda 常用操作;conda 命令指南

    在使用 python anaconda时,经常会用到很多常用操作,记录下来,方便以后更好地使用: conda: Conda既是一个包管理器又是一个环境管理器.你肯定知道包管理器,它可以帮你发现和查看包 ...

  8. Shell—引入外部脚本文件

    在Shell中要如何调用别的shell脚本,或别的脚本中的变量,函数呢? 方式1:. filename               方式2:source filename    需要注意: 两个点之间 ...

  9. Linux系统学习 四、网络基础—互联网概述,互联网接入方式

    互联网概述 WWW:万维网 FTP:文件传输协议 E-MAIL:电子邮件 WWW 典型的C/S架构 URL:统一资源定位 协议+域名或IP:端口+网页路径+网页名 http://www.xxx.com ...

  10. Vue你不知到的$this.emit()的用法

    需求 需求:除了拿到false,还要拿到v-for中的index 如何解决:再使用一次父传子,:a="index" 将下标值传递给子组件   注意要加引号   <expert ...