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. Git错误:error:failed to push some refs to 'git@gitee.com:name/project.git'

    大家在通过本地仓库上传文件到远程仓库时,会报出 error:failed to push some refs to 'git@gitee.com:name/project.git' 的错误. 解决方法 ...

  2. 易优CMS:if的基础用法

    [基础用法] 名称:if 功能:条件判断,比switch判断标签更灵活些,视个人习惯而用. 语法: {eyou:if condition='($eyou.field.has_children > ...

  3. 简单sql注入学到的延时盲注新式攻击

    0x01 知识点 mysql_pconnect(server,user,pwd,clientflag) mysql_pconnect() 函数打开一个到 MySQL 服务器的持久连接. mysql_p ...

  4. 验证码无法正常显示,提示Could not initialize class sun.awt.X11GraphicsEnvironment

    在Web开发中使用验证码时可能遇到的问题:java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsE ...

  5. TOMCAT 8.5 配置优化以及JVM配置(windows server)

    下载官方的tomcat,我这里用的是TOMCAT 8.5.46,然后解压出来,解压后的目录如下图 一.server.xml配置优化 进入conf目录,打开server.xml 文件 1. 找到 < ...

  6. Java后端,最全知识点

    你可能有所感悟.零散的资料读了很多,但是很难有提升.到处是干货,但是并没什么用,简单来说就是缺乏系统化.另外,噪音太多,雷同的框架一大把,我不至于全都要去学了吧. 这里,根据基础.Java基础.Jav ...

  7. ThinkPHP数据库驱动之mysql事物回滚

    1.开启事务方法 startTrans()2.事务提交方法 commit()3.事务回滚方法 rollback() 用法例子: $order = M(‘order’); $allAdded = tru ...

  8. Pycharm界面的子窗口不见了,怎么办?

    pycharm程序界面一般有很多子窗口,如图1所示. 图1  Pycharm子窗口 如果你发现某些子窗口不见了,图2是最过分的情形,无须担心. 图2  Pycharm界面的子窗口不见了 打开项目视图子 ...

  9. 运用tensorflow写的第一个神经网络

    因为实训课要用LSTM+attention机制在钢材领域做一个关系抽取.作为仅仅只学过一点深度学习网络的小白在b站上学习了RNN,LSTM的一些理论知识. 但只懂得一些理论知识是无法完成关系抽取的任务 ...

  10. number.toFixed和Math.round与保留小数

    如果你baidu/google过或者自己写过保留两位小数,那下面这代码一定不陌生 Math.round(number*100)/100 那你使用过Number.prototype.toFixed这个方 ...