简介

快速编写HTML代码

语法简单,语法类似css选择器,30分钟内你就可以搞定它。开发商为sublime、atom、brackets、hbuilder、webstrom等编辑器或IDE提供对应的插件,你可以在你喜欢的编辑器中使用它。它还支持对css快速编辑功能。

缩写

缩写是emmet工具包的核心:这些特殊的表达式在运行时被解析,并转化为对应的结构化代码块(例如html)。缩写语法像css选择器,这样web开发人员可以轻易的使用它,通常情况下按下tabctrl+e会生成对应的代码。

#page>div.logo+ul#navigation>li*5>a{Item $}

可以转换为...

div id="page">
<div class="logo"></div>
<ul id="navigation">
<li><a href="">Item 1</a></li>
<li><a href="">Item 2</a></li>
<li><a href="">Item 3</a></li>
<li><a href="">Item 4</a></li>
<li><a href="">Item 5</a></li>
</ul>
</div>

语法

官网语法介绍文档:http://docs.emmet.io/abbreviations/syntax/

元素

比如p、h1元素,会生成标签<p></p><h1></h1>,并且你可以写任意文字将会转化为标签tt-><tt></tt,意味着emmet可以用于编辑xml等标记语言。

嵌套的运算符

用嵌套的运算符来代表html中dom元素的树形结构

子层:>

div>ul>li

生成...

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

兄弟层:+

header+nav+section+footer

生成...

<header></header>
<nav></nav>
<section></section>
<footer></footer>

上层:^

header>h1^nav

生成...

<header>
<h1></h1>
</header>
<nav></nav>

乘法:*

ul>li*4

生成...

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

分组:()

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>

属性运算符

用于修改输出元素的属性。例如,可以在html和xml中生成元素的class属性。

ID和CLASS:# .

在css中可以使用div#id和div.class来设置指定元素并指定id或class的样式。在emmet中,同样可以使用这些语法来为html元素添加属性,并指定值。

div#header+div.navigation+div.footer

生成...

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

自定义属性:[]

您可以使用[attr1="value1" attr2=value2]的形式来添加元素属性值。

a[href=index.html title=index]

生成...

<a href="index.html" title="index"></a>
  • 空格分隔多个属性
  • 值处的引号可以省略
  • emmet自动为元素生成必须的属性

项目编号: `###

随着乘法*运算符可以重复的元素,但$你可以编号它们。

ul>li.item$*3

生成...

<ul>
<li class="item1"></li>
<li class="item2"></li>
<li class="item3"></li>
</ul>

您可以使用多个$成一排用零垫编号:

ul>li.item$$$*3

生成...

<ul>
<li class="item001"></li>
<li class="item002"></li>
<li class="item003"></li>
</ul>

修改编号方向:$@-

在序号$后添加@-,实现项目标号的反序。

ul>li.item$@-*3

生成...

<ul>
<li class="item3"></li>
<li class="item2"></li>
<li class="item1"></li>
</ul>

开始值:$@3

修改计算基值,在序号$后添加@数字

ul>li.item$@2*3

...转换为

<ul>
<li class="item2"></li>
<li class="item3"></li>
<li class="item4"></li>
</ul>

您可以一起使用这些修饰符:

ul>li.item$@-3*5

文本:{}

a{hello}

生成...

<a href="">hello</a>

复杂一点的

<!-- a{click}+b{here} -->
<a href="">click</a><b>here</b> <!-- a>{click}+b{here} -->
<a href="">click<b>here</b></a>

隐式标记

emmet解析器根据表达式上下文(父子关系),推导出被省略元素的类型。从而对emmet语法的表达式再次简写。

	.header>h1#title+ul>.item*2

生成...

<div class="header">
<h1 id="title"></h1>
<ul>
<li class="item"></li>
<li class="item"></li>
</ul>
</div>

常见规则:

  1. 上下文无法获得元素时,产生div元素;
  2. li对应于ul ol,例如,ul>.item -> <ul><li class="item"></li></ul>
  3. tr对应于table thead tbody tfoot
  4. td对应于tr
  5. option对于select optgroup

填充文本:lorem

编写的静态网页常常做为动态网页的模版,你不得不填写一些无用的文本来撑起整个页面。

ul>li*2>lorem2

生成...

<ul>
<li>Lorem ipsum.</li>
<li>Alias, dolorum?</li>
</ul>
  • lorem然后执行emmet会生成30个单词;
  • lorem10会生成10个单词;

Emmet 快速编写html代码的更多相关文章

  1. Emmet快速编写HTML代码

    缩写是Emmet工具的核心,这些特殊的表达式通过Emmet解析并转化为结构化的代码块,而语法用CSS选择器,HTML标签和一些Emmet特定的代码生成,所以对于任何一个前端开发人员都可以很容易地掌握和 ...

  2. VsCode中使用Emmet神器快速编写HTML代码

    一.Emmet简述 Emmet (前身为 Zen Coding) 是一个能大幅度提高前端开发效率的一个工具. 在前端开发的过程中,一大部分的工作是写 HTML.CSS 代码.特别是手动编写 HTML ...

  3. Emmet快速编写代码

    Emmet快速编写代码 ★div → <div></div>, span → <span></span> ★CSS选择器 ​ 给标签指定id选择器 di ...

  4. 使用Emmet 快速生成HTML代码

    在前端开发的过程中,一个最繁琐的工作就是写 HTML.CSS 代码.数量繁多的标签.属性.尖括号.标签闭合等,让前端们甚是苦恼.于是,我向大家推荐 Emmet,它提供了一套非常简单的语法规则,书写起来 ...

  5. Emmet快速编写CSS样式

    基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin. 1.而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如: ...

  6. 结合Zen Coding快速编写HTML代码(sublime text2篇)

    首先说下,如何在sublime text2加上zen coding插件 按 Ctrl+`(就是~这个键) 复制下面的代码 确认 重新启动sublime text2 import urllib2,os; ...

  7. Emmet:HTML/CSS代码快速编写神器

    本文来源:http://www.iteye.com/news/27580    ,还可参考:http://www.w3cplus.com/tools/emmet-cheat-sheet.html Em ...

  8. Emmet:HTML/CSS代码快速编写神器(转)

    Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: ...

  9. Sublime Text 3插件之Emmet:HTML/CSS代码快速编写神器

    一.快速编写HTML代码 1.  初始化 HTML文档需要包含一些固定的标签,比如<html>.<head>.<body>等,现在你只需要1秒钟就可以输入这些标签. ...

随机推荐

  1. [UWP]依赖属性2:使用依赖属性

    5. 完整的自定义依赖属性 5.1 定义 /// <summary> /// 标识 Title 依赖属性. /// </summary> public static reado ...

  2. vue.js 常用语法总结(一)

    作者:曾萍,目前就职于京东商城. 概述 2016年已经结束了.你是否会思考一下,自己在过去的一年里是否错过一些重要的东西?不用担心,我们正在回顾那些流行的趋势.通过比较过去12个月里Github所增加 ...

  3. js小功能合集:计算指定时间距今多久、评论树核心代码、字符串替换和去除。

    1.计算指定时间距今多久 var date1=new Date('2017/02/08 17:00'); //开始时间 var date2=new Date(); //当前时间 var date3=d ...

  4. 【小梅哥FPGA进阶教程】第九章 基于串口猎人软件的串口示波器

    九.基于串口猎人软件的串口示波器 1.实验介绍 本实验,为芯航线开发板的综合实验,该实验利用芯航线开发板上的ADC.独立按键.UART等外设,搭建了一个具备丰富功能的数据采集卡,芯航线开发板负责进行数 ...

  5. Orcale 之基本术语二

    表空间 表空间是 Orcale 数据库最大的逻辑结构.表空间就是一个或者多个数据文件的集合.所有的数据文件都被逻辑的存放在表空间中. 一个数据库包括 SYSTEM.SYSAUX和TMP三个默认表空间, ...

  6. Python学习的个人笔记(基础语法)

    Python学习的个人笔记 题外话: 我是一个大二的计算机系的学生,这份python学习个人笔记是趁寒假这一周在慕课网,w3cschool,还有借鉴了一些博客,资料整理出来的,用于自己方便的时候查阅, ...

  7. 移动端touch实现下拉刷新

    移动端实现下拉刷新 第一部分:四个touch事件 1.touchstart:只要将手指放在了屏幕上(而不管是几只),都会触发touchstart事件. 2.touchmove: 当我们用手指在屏幕上滑 ...

  8. Spring的bean管理(注解)

    前端时间总是用配置文件  内容太多 下面认识一下注解 注解是什么? 1代码里面的特殊标记,使用注解可以完成功能 2注解写法@XXX 3使用注解可以少些很多配置文件 Spring注解开发准备 注解创建准 ...

  9. jquery实现全选、全不选、反选、获取选中的所有值总结

    HTML 我们的页面上有一个歌曲列表,列出多行歌曲名称,并匹配复选框供用户选择,并且在列表下方有一排操作按钮. <!doctype html> <html> <head& ...

  10. 将apache的prefork改成worker

    1. 检测apache正在使用哪个MPM? XXX@XXX-ThinkPad-Edge-E431:~$ apachectl -V | grep -i mpm Server MPM: prefork 2 ...