Emmet快速生成HTML代码的常用语法总结


前言

Emmet是一款文本编辑器/IDE的插件,用来快速生成复杂的HTML代码,只要掌握一些常用的语法(类似于CSS选择器),就可以减少重复编码的工作,真的提升开发效率之利器。

所有的操作都是按下tab键即可瞬间完成。

一、相关语法

1. 用.来生成类名

div.aaa

按tab后生成如下:

<div class="aaa">div>

输入

p.class1.class2.class3

输出

<p class="class1 class2 class3">p>

2. id用#

div#aaa

按tab

<div id="aaa">div>

3. 属性用 []

div[title='hello' colspan=3]

生成:

<div title="hello" colspan="3">div>

4. 用$来实现编号,实际上就是个占位符 (很实用, 写几个$ 默认会有几位的数字)

li.aaa$*3

结果

<li class="aaa1">li>
<li class="aaa2">li>
<li class="aaa3">li>

输入

h$[title=item$]{Header $}*3

生成

Header 1

Header 2

Header 3

输入

ul>li.item$$$*5

生成

5. 用@n来修改起始值(赋值代表数字倒序,仅写 - 代表 -1,其他值 要写出对应的 -1,-2,-3 等,负几无论生成的数量是几,最后一个元素的数字就是几,比如 -3 ,则最后一个元素的 数字是3 )

li.aaa$@3*3

生成:

<li class="aaa3">li>
<li class="aaa4">li>
<li class="aaa5">li>

 3可以用-3,就会变成 5,4,3

输入

li.aaa$@-3*3

生成

<li class="aaa5">li>
<li class="aaa4">li>
<li class="aaa3">li>

6. {} 可以添加文本 (这个非常实用!!! 在想要写一些测试demo 写多个元素 分别为1,2,3,4 之类的  可以瞬间生成 !)

输入:

  div.container>div.item.item${测试 $}*8

生成:

<div class="container">
      <div class="item item1">测试 1div>
      <div class="item item2">测试 2div>
      <div class="item item3">测试 3div>
      <div class="item item4">测试 4div>
      <div class="item item5">测试 5div>
      <div class="item item6">测试 6div>
      <div class="item item7">测试 7div>
      <div class="item item8">测试 8div>
div> 

输入

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

生成

<p>Click <a href="">herea> to continuep>

7. > 生成子元素

div>ul>li

结果

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

8. + 生成兄弟元素

输入

div.box-left+div.box-right

生成

<div class="box-left">div>
<div class="box-right">div>

9. ^ 向上一级,比如写了> 进入了子级,输入这个 ^ 就可以退出到上一级继续输入

div+div>p>span+em^bq

生成

>>
    >
        >>>>>>
        >>
>

10. *n  生成多个相同元素

div.item*5

生成

<div class="item">div>
<div class="item">div>
<div class="item">div>
<div class="item">div>
<div class="item">div>

11. () 将元素分组 (主要作用是省去使用 ^ 去到上一层级的符号,括号直接代替)

输入

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>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>

二、隐式标签

输入

  .item

生成

<div class="item">div>

输入

em>.item

生成

<em><span class="item">span>em>

输入

ul>.item

生成

<ul>
      <li class="item">li>
ul>

输入

table>.row>.col

生成

 <table>
      <tr class="row">
        <td class="col">td>
      tr>
table>

三、html标签

所有未知的缩写都会转换成标签,例如,foo →

四、生成html页面基础结构【非常重要,非常好用】

输入  !  

生成

DOCTYPE html>
        <html lang="en">
            <head>
                <meta charset="UTF-8" />
                <meta http-equiv="X-UA-Compatible" content="IE=edge" />
                <meta name="viewport" content="width=device-width, initial-scale=1.0" />
                <title>Documenttitle>
            head>
            <body>body>
html>

参考链接:

https://www.jianshu.com/p/9352a0411fcb

http://t.zoukankan.com/haoqirui-p-12257215.html

官方文档

https://docs.emmet.io/cheat-sheet/