Emmet Documentation(Translation)

Emmet Documentation

官方文档地址

Elements

Emmet自身并没有预先定义合法标签的集合,只会根据你写的标签名来生成标签对,需要在语句的最后加上Tab键来生成,例如:
div+Tab -> <div></div>
study+Tab -> <study></study>

Nesting operators

一个html文件中的所有元素满足一颗生成树结构,根结点为html,根结点的子节点有head和body,而head结点的子结点又有title、meta等等;Emmet使用嵌套的符号来定位这些元素在树中的位置;

Child: >

使用符号’>‘表示其后跟着的是前一个结点的直接子结点,例如:
div>ul>li
生成

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

Sibling: +

使用符号’+‘表示其后跟着的是前一个结点的兄弟结点,即有相同父结点,例如:
div+p+bq
生成

<div></div>
<p></p>
<blockquote></blockquote>

Climb-up: ^

使用符号‘^’表示其后跟着的是前一个结点的父节点的兄弟结点,例如:
div+div>p>span+em
生成

<div></div>
<div>
    <p><span></span><em></em></p>
</div>

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

<div></div>
<div>
    <p><span></span><em></em></p>
    <blockquote></blockquote>
</div>

当然,你也可以使用多个^符号,来表示前一个结点的父结点的父结点的父结点的……兄弟结点,例如:
div+div>p>span+em^^^bq
生成

<div></div>
<div>
    <p><span></span><em></em></p>
</div>
<blockquote></blockquote>

Multiplication: *

使用符号’*‘表示其后跟的元素会重复出现多少次,例如:
ul>li*5
生成

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

Grouping: ()

使用符号‘()’相当于将其后的所有元素当作一个结点,其实是一颗子树,例如:
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>

这个时候结点div的子结点为(header>ul>li*2>a)和footer;
(div>dl>(dt+dd)*3)+footer>p
生成

<div>
    <dl>
        <dt></dt>
        <dd></dd>
        <dt></dt>
        <dd></dd>
        <dt></dt>
        <dd></dd>
    </dl>
</div>
<footer>
    <p></p>
</footer>

(dt+dd)*3表示将会输出三次,这个时候(div>dl>(dt+dd)*3)结点和footer是兄弟结点;

Attribute operators

属性符号用于输出元素的属性,例如属性title、class、id等等;

ID and CLASS

使用符号’#‘后跟单词,表示的是结点的id属性,使用符号‘.’后跟单f词,表示的是结点的class属性;例如:
div#header+div.page+div#footer.class1.class2.class3
生成

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

Custom attributes

使用’[attr]‘来表示结点的属性,例如:
td[title="Hello world!" colspan=3]
生成

<td title="Hello world!" colspan="3"></td>

需要注意的是,如果属性值包含空格,需要使用引号包含进来;如果仅仅写了属性名而没有包含值,默认值为空,例如:
td[colspan title]
生成

<td colspan="" title="">

Item numbering: $

使用符号‘$’可以使属性的值自增,常常配合符号‘*’使用,默认从1开始递增,例如:
ul>li.item$*5
生成

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

可以使用多个‘$’符号来产生前导零,例如:
ul>li.item$$$*5
生成

<ul>
    <li class="item001"></li>
    <li class="item002"></li>
    <li class="item003"></li>
    <li class="item004"></li>
    <li class="item005"></li>
</ul>
Changing numbering base and direction

使用符号’@-‘可以改变值变化的方向(递增或者递减),其实就是将正序后的值颠倒一下,例如:
ul>li.item$@-*5
生成

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

使用符号‘@number’可以改变’$’值的默认起始值,例如:
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>

我们也可以将这几个符号组合起来用,例如:
ul>li.item$@-3*5
生成

<ul>
    <li class="item7"></li>
    <li class="item6"></li>
    <li class="item5"></li>
    <li class="item4"></li>
    <li class="item3"></li>
</ul>

Text:{}

使用符号‘{}’可以表示标签包含的文本内容,例如:
a{click me}
生成

<a href="">Click me</a>
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值