Emmet 基础使用之 HTML 篇
Emmet(以前名为 Zen Coding)是一套面向文本编辑器的插件,它允许通过内容辅助高速度的编写和编辑HTML、XML、XSL和其他结构化的代码格式。
本文主要介绍 HTML 相关快捷操作。
1. 内嵌元素
1.1. >
子元素
如:div>ul>li
输出:
1 | <div> |
1.2. +
兄弟元素
如:div+p+bq
输出:
1 | <div></div> |
1.3. ^
提升元素级次
如:div+div>p>span+em
输出:
1 | <div></div> |
追加 ^
后,如 div+div>p>span+em^bq
输出:
1 | <div></div> |
追加多个 ^
后,如 div+div>p>span+em^^^bq
输出:
1 | <div></div> |
1.4. *n
重复输出 n 个元素
如:ul>li*3
输出:
1 | <ul> |
1.5. ()
分组子元素,用以生成比较复杂的 Dom 结构
如:div>(header>ul>li*2>a)+footer>p
输出:
1 | <div> |
支持嵌套,如 (div>dl>(dt+dd)*2)+footer>p
输出:
1 | <div> |
2. 元素属性
2.1. 元素的后面跟 #id 或 .class,生成元素的同时将添加指定名称的属性
如:div#header+div.page+div#footer.class1.class2.class3
输出:
1 | <div id="header"></div> |
2.2. 使用 [attr]
添加其它属性
如:td[title="Hello world!" colspan=3]
输出:
1 | <td title="Hello world!" colspan="3"></td> |
提示:
- 方括号内的属性可以添加任意多个。
- 属性也可以不指定值,如
td[colspan title]
将输出<td colspan="" title=""></td>
,然后使用 tab 键可依次切换属性填充值。 - 属性值用单引号或双引号都可以。
- 如果属性值没有空格,也可以不用添加引号。
2.3. 使用 $ 给属性值编号
如:ul>li.item$*5
输出:
1 | <ul> |
使用多个 $ 可填充 0 ,如 ul>li.item$$$*5
输出
1 | <ul> |
使用 @-
可以改变编号的方向(递增、递减),如 ul>li.item$@-*5
输出
1 | <ul> |
使用 @n
可以修改编号的基数值,如 ul>li.item$@3*5
输出
1 | <ul> |
一个综合示例,如 ul>li.item$@-3*5
输出
1 | <ul> |
3. 元素文本内容
3.1 使用 {text}
跟元素添加内容
如:a{Click me}
输出:
1 | <a href="">Click me</a> |
一个复杂点的例子,如 p>{Click }+a{here}+{ to continue}
输出
1 | <p>Click <a href="">here</a> to continue</p> |
提示:{text}
放在紧跟着元素分隔符的右侧,则不会影响父级的 Dom 级次。如上例中的 p>{Click }
不会影响 > 右边的所有元素作为 p 的下级。