Emmet 快速编写html代码
简介

语法简单,语法类似css选择器,30分钟内你就可以搞定它。开发商为sublime、atom、brackets、hbuilder、webstrom等编辑器或IDE提供对应的插件,你可以在你喜欢的编辑器中使用它。它还支持对css快速编辑功能。
缩写
缩写是emmet工具包的核心:这些特殊的表达式在运行时被解析,并转化为对应的结构化代码块(例如html)。缩写语法像css选择器,这样web开发人员可以轻易的使用它,通常情况下按下tab或ctrl+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>
常见规则:
- 上下文无法获得元素时,产生
div元素; li对应于ul ol,例如,ul>.item-><ul><li class="item"></li></ul>;tr对应于table thead tbody tfoot;td对应于tr;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代码的更多相关文章
- Emmet快速编写HTML代码
缩写是Emmet工具的核心,这些特殊的表达式通过Emmet解析并转化为结构化的代码块,而语法用CSS选择器,HTML标签和一些Emmet特定的代码生成,所以对于任何一个前端开发人员都可以很容易地掌握和 ...
- VsCode中使用Emmet神器快速编写HTML代码
一.Emmet简述 Emmet (前身为 Zen Coding) 是一个能大幅度提高前端开发效率的一个工具. 在前端开发的过程中,一大部分的工作是写 HTML.CSS 代码.特别是手动编写 HTML ...
- Emmet快速编写代码
Emmet快速编写代码 ★div → <div></div>, span → <span></span> ★CSS选择器 给标签指定id选择器 di ...
- 使用Emmet 快速生成HTML代码
在前端开发的过程中,一个最繁琐的工作就是写 HTML.CSS 代码.数量繁多的标签.属性.尖括号.标签闭合等,让前端们甚是苦恼.于是,我向大家推荐 Emmet,它提供了一套非常简单的语法规则,书写起来 ...
- Emmet快速编写CSS样式
基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin. 1.而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如: ...
- 结合Zen Coding快速编写HTML代码(sublime text2篇)
首先说下,如何在sublime text2加上zen coding插件 按 Ctrl+`(就是~这个键) 复制下面的代码 确认 重新启动sublime text2 import urllib2,os; ...
- Emmet:HTML/CSS代码快速编写神器
本文来源:http://www.iteye.com/news/27580 ,还可参考:http://www.w3cplus.com/tools/emmet-cheat-sheet.html Em ...
- Emmet:HTML/CSS代码快速编写神器(转)
Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: ...
- Sublime Text 3插件之Emmet:HTML/CSS代码快速编写神器
一.快速编写HTML代码 1. 初始化 HTML文档需要包含一些固定的标签,比如<html>.<head>.<body>等,现在你只需要1秒钟就可以输入这些标签. ...
随机推荐
- SpringMVC:学习笔记(2)——RequestMapping及请求映射
SpringMVC--RequestMapping及请求映射 @RequestMapping 说明 Spring MVC 使用 @RequestMapping 注解为控制器指定可以处理哪些 URL 请 ...
- Win7配置IIS7
1.安装 控制面板\程序\程序和功能\打开或关闭Windows功能 选择Internet信息服务勾选相应的内容 2.打开iis信息服务管理器 点击菜单\运行(WIN+R) 输入iis 如图所示 可 ...
- 《剑指offer》— JavaScript(1)二维数组中的查找
二维数组中的查找 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. ** ...
- 深入探讨 CSS 特性检测 @supports 与 Modernizr
什么是 CSS 特性检测?我们知道,前端技术日新月异的今天,各种新技术新属性层出不穷.在 CSS 层面亦不例外. 一些新属性能极大提升用户体验以及减少工程师的工作量,并且在当下的前端氛围下: 很多实验 ...
- 用DotRas来连接VPN网络
最近要用程序来不断的连接VPN(为什么要这样就不讨论了),开始用的是如下代码: public static bool ADSL() { bool flag = true; do { Console.W ...
- 前端总结·基础篇·CSS(三)补充
前端总结系列 前端总结·基础篇·CSS(一)布局 前端总结·基础篇·CSS(二)视觉 前端总结·基础篇·CSS(三)补充 目录 一.移动端 1.1 视口(viewport) 1.2 媒体查询(medi ...
- 每天一个Linux命令(14)--head命令
head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块,head 用来显示档案的开头至标准输出中,而 tail 想当然的就是查看档案的结尾啦. 1.命令格式: h ...
- VUE2.0实现购物车和地址选配功能学习第六节
第六节 地址列表过滤和展开所有的地址 html:<li v-for="(item,index) in filterAddress">js: new Vue({ el:' ...
- Java设计模式之《桥接模式》及应用场景
摘要: 原创作品,可以转载,但是请标注出处地址http://www.cnblogs.com/V1haoge/p/6497919.html 这里摘抄一份他处的概念,你可以不必理会,先看下面得讲解与实例, ...
- AIO75产品特征与优势
第一章 系统一体化 AIO7的核心流程由供应链.生产制造.财务成本及自动化办公构成,是迄今为止国内最完善的ERP.OA .HR .MES一体化产品.通过CRM(客户关系)及DRP(分销)扩充出“营销通 ...