Emmet 语法探析
Emmet 语法探析
Emmet(Zen Coding)是一个能大幅度提高前端开发效率的一个工具。
大多数编辑器都支持Snippet,即存储和重用一些代码块。但是前提是:你必须先定义
这些代码块。
Emmet的特点在于你可以设置CSS形式的能够动态解析的表达式,然后根据所输入
的表达式来生成相应的内容。Emmet还有一些常用的高级功能,如生成Lorem Ipsum,更新CSS的属性值,
将图片资源转换成data url形式等。通过对Emmet的熟练使用,可以极大地推动你的生产力。
使用Emmet生产HTMl语法解析
- 生成HTML文档初始结构
首先使用Ctrl+N新建一个页面,然后使用Ctrl+Shift+PSet Syntax:HTML.在得到的支持HTML语法
文档中输入一个"!",然后摁下TAB键,就可以生成一个HTML5的标准文档结构:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
< title>Document</title>
</head>
<body>
</body>
</html>
其他常用的 HTML 结构指令:
- html:5 或者!生成HTML5结果
- html:xt 生成HTML4过渡型
- html:4s 生成HTML4严格型
生成带有id、class的HTML标签
Emment 默认的标签为div
生成id为main的div标签,指令为#main
编写一个clas为aaa的span标签,指令为span
编写一个id为list的class为fruit的ul标签,指令为ul#list.fruit
生成后代:>
大于号表示后面要生成的内容为当前标签的后代。例如要生成一个无序列表,
而且被class为list的div包裹,则指令为:div.list>ul>li
生成兄弟:+
如果要生成平级元素,就需要+号,ex: div+p+dq
生成上级元素: ^
根据ul与li的关系不难理解上级元素(Climb-up)的意思。
尝试如下指令: div>ul>li^span,生成结构如下:
<div>
<ul>
<li></li>
</ul>
<span></span>
</div>
重复生成多份: *
对于一个无序列表,如果要生成多个li标签,可以直接在li后面
*上附加所需个数 : ul>li*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>
生成自定义属性: [attr]
a标签中往往需要附带href属性和title属性,如果想要生成一个href为"http://google.com",
title为"google"的a标签,指令为: a[href="http://google.com" title="google"]
对生成内容编号: $
ex: 为五个li增加一个class属性值为itme1,然后依次递增从1-5,则使用$符号:ul>li.item$*5,
- 如果要生成三位数的序号,
ul>li.item$$$*5; - 同时也可以在$后面增加@-来实现倒序排列,
ul>li.item$@-*5; - 使用@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>
生成文本内容:{}
ex: 生成a标签里面的内容:a[href="http://github.com"]{点击链接GITHUB}
这样就生成一个github的超链接.生成内容的时候特别要注意前后的符号关系,
虽然 a>{Click me} 和 a{Click me} 生成的结构是相同的,但是加上其他的内容就不一定了.
ex:
<!-- a{click}+b{here} -->
<a href="">click</a><b>here</b>
<!-- a>{click}+b{here} -->
<a href="">click<b>here</b></a>
切忌指令中,不要有空格,一面导致代码无法使用。
Emmet 语法探析的更多相关文章
- 中文分词工具探析(二):Jieba
1. 前言 Jieba是由fxsjy大神开源的一款中文分词工具,一款属于工业界的分词工具--模型易用简单.代码清晰可读,推荐有志学习NLP或Python的读一下源码.与采用分词模型Bigram + H ...
- 中文分词工具探析(一):ICTCLAS (NLPIR)
1. 前言 ICTCLAS是张华平在2000年推出的中文分词系统,于2009年更名为NLPIR.ICTCLAS是中文分词界元老级工具了,作者开放出了free版本的源代码(1.0整理版本在此). 作者在 ...
- javaScript系列 [02]-javaScript对象探析
[02]-javaScript对象探析 题记:多年前,以非常偶然的方式关注了微信公众号“面向对象”,本以为这个公众号主要以分享面向对象编程的干货为主,不料其乃实实在在的猿圈相亲平台.通过查看公开资料, ...
- Emmet语法预览
Emmet 是一个能提高前端开发效率的编辑器插件,支持 Sublime,Atom,TextMate,Nodepad++ 等主流编辑器.Emmet 定义了一些缩写,当我们输入缩写代码后,按展开键(默认是 ...
- Emmet语法大全手册
这是基于官方手册整理制作的,因为那个手册网页打开很慢,所以就整理在这里了.以备不时之需. Syntax Child: > nav>ul>li <nav> <ul ...
- 深入探析koa之中间件流程控制篇
koa被认为是第二代web后端开发框架,相比于前代express而言,其最大的特色无疑就是解决了回调金字塔的问题,让异步的写法更加的简洁.在使用koa的过程中,其实一直比较好奇koa内部的实现机理.最 ...
- 开源中文分词工具探析(三):Ansj
Ansj是由孙健(ansjsun)开源的一个中文分词器,为ICTLAS的Java版本,也采用了Bigram + HMM分词模型(可参考我之前写的文章):在Bigram分词的基础上,识别未登录词,以提高 ...
- 开源中文分词工具探析(四):THULAC
THULAC是一款相当不错的中文分词工具,准确率高.分词速度蛮快的:并且在工程上做了很多优化,比如:用DAT存储训练特征(压缩训练模型),加入了标点符号的特征(提高分词准确率)等. 1. 前言 THU ...
- 开源中文分词工具探析(五):FNLP
FNLP是由Fudan NLP实验室的邱锡鹏老师开源的一套Java写就的中文NLP工具包,提供诸如分词.词性标注.文本分类.依存句法分析等功能. [开源中文分词工具探析]系列: 中文分词工具探析(一) ...
随机推荐
- NFinal学习笔记 02—NFinalBuild
在学习NFinal的过程中发现在线.net编译器Web版—— NFinalBuild 什么是NFinalBuild呢?它就是帮助我们简单又快速的更新我们网站的一种编译器,我们不用再只为了更新.net网 ...
- 第二章 Android Studio使用第三方模拟器
1.为什么要使用第三方模拟器 Android Studio自带模拟器,相对Eclipse来说项目启动速度的确快了很多倍,提高了开发效率.但和第三方模拟器进行对比的话,还是第三方的模拟器运行速度更快些. ...
- 0119——UIImageView的一些属性 和 简单动画实现
1.contentMode view.contentMode = UIViewContentModeScaleAspectFill; 2.是否实现触摸 3.简单实现动画 图片的名字为campFire0 ...
- JavaScript、Ajax与jQuery的关系
简单总结: 1.JS是一门前端语言. 2.Ajax是一门技术,它提供了异步更新的机制,使用客户端与服务器间交换数据而非整个页面文档,实现页面的局部更新. 3.jQuery是一个框架,它对JS进行了封装 ...
- Android 开发转型前端准备知识
最近React Native甚是流行,再加上微信推动微应用的背景下,Android和IOS向前端转型势在必行. 技能点: 1.lambda表达式 http://blog.csdn.net/ioriog ...
- [C++程序设计]用数组名作函数参数
1. 用数组元素作函数实参 #include <iostream> using namespace std; int max_value(int x, int max) { return ...
- MVC 中使用uploadify上传图片遇到的蛋疼问题
MVC 中使用uploadify上传图片遇到的蛋疼问题 初次使用uploadify上传图片,遇到了一些比较纠结的问题,在这里和大家分享下,有不对的地方还望大神多多指教,希望对刚接触的朋友有所帮助,文采 ...
- knockout.js简单实用教程1
第一次接触knockout是在一年多之前吧.当时是接手了一个别人的项目,在项目中有用到knockout来进行数据的绑定.也就开始学习起来knockout.在之后的项目中也多次用到了这个.在第一次开始学 ...
- 观点:哪些人适合做FPGA开发?(转)
原文:http://xilinx.eetrend.com/blog/561 FPGA目前非常火,各个高校也开了FPGA的课程,但是FPGA并不是每个人都适合,FPGA讲究的是一个入道,入什么道,入电子 ...
- DOSUSB 2.0 免费版的限制原理
两年前,我在写USB的文章时,多次提到了DOSUSB这个东东,这两年也没有关注这方面的变化,最近,有机会重新进入DOSUSB的官方网站(www.dosusb.net),欣喜地发现,这个网站不仅依然存在 ...