Emmet入门教程(原zen coding),编写HTML提速神器

简写输入

Emmet的简写的原理有点像CSS技术里面的Class选择器,区别是它使元素分层结构以及其标签的属性表达起来更轻便。

译者注:如果你不知道我说的是什么,这有个视频,应该更直观一些。

http://v.youku.com/v_show/id_XMTM4NDQwNzgw.html

输入标签

你可以用标签名如div、p直接生成完整的HTML标签。Emmet可没有定义什么标签合法,因此你可以随便写点什么都可以生成相应的标签,如div--->

,foo--->
译者注:eclipse里输入div单击tab键会自动生成
,亲,别说你的eclipse还没装Emmet扩展~什么,你没时间装?装吧你就,这有个地址你可以在线尝试一下,“ctrl+,”可以展开简写输入式,注意是英文状态下的“,”。

http://zen-coding.ru/demo/

输入嵌套标签

这里的嵌套标签包括两种,标签并列和标签嵌套。

标签嵌套

你可以用“>”来描述标签之间的嵌套关系:

div>ul>li

展开中...


标签并列

用"+"可以来描述标签之间的并列关系:

div+p+bq

展开中...


向上一级

通过“^”你可以让之后的元素与和更高一层的元素并列,下面是使用前后的对比:

div+div>p>span+em

展开中...


div+div>p>span+em^bq

展开中...


正如你所料,多个“^”同时使用则之后的元素向上跳了N层

div+div>p>span+em^^^bq

展开中...


输入多个标签

“*”可以实现输入多个标签:

ul>li*5

展开中...


标签分组

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

展开中...


你也可以把分组的括号和“*”联合起来使用:

(div>dl>(dt+dd)*3)+footer>p

展开中...


有了分组,甚至你可以把整个网页通过一行简写式生成,不过可别这么做,亲。

输入属性

是的,你没看错。Emmet允许你在输入标签的同时输入它的属性。比如,HTML和XML里面的class属性。

输入ID和CLASS属性

CSS里面#id和.class可以描述元素的id和class属性,在Emmet也一样:

div#header+div.page+div#footer.class1.class2.class3

展开中...



其他属性

你可以使用[attr]来设置元素的其他属性:

td[title="hello world" colspan=3]

展开中...


呵呵,想输如多少属性就输入多少属性,甚至你不用赋值,比如td[title colspan]--->,在一些编辑器里用Tab键可以依次赋值( 译注:eclipse亲测)。单双引号都无所谓,要是属性值没有空格,你连引号也省了吧。

可以自增长的数字

ul>li.item$*5

展开中


如果用了多个"$"会是什么效果呢?

ul>li.item$$$*5

展开中...

标签内的文字

a{click me}

展开中...

Click me
接下来的功能很有趣:

a{click}和a>{click}展开后是一样的,但a{click}+b{click}和a>{click}+b{click}是不一样的:


clickhere


clickhere

这里还有一个更复杂的例子:

p>{Click}+a{here}+{to continue}

展开中...

Click here to continue


我想这正是你想要的,而不是下面这样:

p{Click}+a{here}+{to continue}

展开中...

Click

here to continue

留意你简写输入式的格式

也许你会加入一些格式来上你的简写输入式可读性更强,比如使用空格,但那只会让你的代码不能展开。有些人会人为只有在新的一行才能展开,别傻了,实际上在哪都行。


原文地址:http://docs.emmet.io/abbreviations/syntax/



你可能感兴趣的:(Emmet入门教程(原zen coding),编写HTML提速神器)