经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » HTML/CSS » HTML » 查看文章
HTML速写之Emmet语法规则的实现
来源:jb51  时间:2021/4/12 9:35:23  对本文有异议

在前端开发的过程中,最费时间的工作就是写 HTML、CSS 代码。一堆的标签、属性、括号等,头疼。这里推荐一个Emmet语法规则,让你写的时候爽到飞起,能大大提高代码书写,只需要敲一行代码就能生成你想要的完整HTML结构,下面会介绍如何使用。

Emmet是一款插件,只要能安装他的编辑器都能使用,大部分编辑器都可以使用该语法规则,我们平时开发的Sublime TextEclipseNotepad++VS codeAtomDreamweaver等等编辑器都可以使用。

安装方式和平时安装插件一样搜索这个emmet插件安装,每个编辑器安装方式不同,请各自尝试

先来个例子:

这里写图片描述

这个普通的HTML结构,你需要多久打出来呢?
我只需要几秒钟,写好下面这条语句,按下键盘Tab键即可看到上图中的结构了

  1. div#box>p.title+ul.list>li.child${我是第$个}*3^div#box2

是不是很爽,很快~~啊 ~ 啊~,仅仅一行代码就生成了一个复杂的HTML结构,并且id,class,内容都对应的上

开始讲解语法吧

1:html初始结构

下图中的结构,偷懒的都会直接一个!=> Tab 解决,这样可以快速生成基础的结构,同时防止手写时忘记某个代码块,输入错误的代码。

这里写图片描述

2:id(#),class(.)

id指令:# ; class指令:.

div#test

  1. <div id="test"></div>

div.test

  1. <div class="test"></div>

3:子节点(>),兄弟节点(+),上级节点(^)

子节点指令:> ; 兄弟节点指令:+ ; 上级节点:^

div>ul>li>p

  1. <div>
  2. <ul>
  3. <li>
  4. <p></p>
  5. </li>
  6. </ul>
  7. </div>

div+ul+p

  1. <div></div>
  2. <ul></ul>
  3. <p></p>

div>ul>li^div (这里的^是接在li后面所以在li的上一级,与ul成了兄弟关系,当然两个^^就是上上级)

  1. <div>
  2. <ul>
  3. <li></li>
  4. </ul>
  5. <div></div>
  6. </div>

4:重复(*)

重复指令:*

div*5(*号后面添加数字表示重复的元素个数

  1. <div></div>
  2. <div></div>
  3. <div></div>
  4. <div></div>
  5. <div></div>

5:分组(())

分组指令:()

div>(ul>li>a)+div>p
括号里面的内容为一个代码块,表示与括号内部嵌套和外面的的层级无关

  1. <div>
  2. <ul>
  3. <li><a href=""></a></li>
  4. </ul>
  5. <div>
  6. <p></p>
  7. </div>
  8. </div>

解释:这里如果不加括号的话,猜想下,a+div这样div就是和a是兄弟关系了,会包含在li里面。懂了吧哈哈

  1. <div>
  2. <ul>
  3. <li>
  4. <a href=""></a>
  5. <div>
  6. <p></p>
  7. </div>
  8. </li>
  9. </ul

6:属性([attr])——id,class都有怎么能少了属性呢

属性指令:[]

a[href=’###’ name=‘xiaoA’] (中括号内填写属性键值对的形式,并且空格隔开

  1. <a href="###" name="xiaoA"></a>

###6:编号($)
编号指令:$

ul>li.test$*3 ($代表一位数,后面更上*数字就代表从1递增到填写的数字

  1. <ul>
  2. <li class="test1"></li>
  3. <li class="test2"></li>
  4. <li class="test3"></li>
  5. </ul>

注意

一个$ 代表一位数,$$就是两位数了,以此类推就可以形成$(1),$$(01),$$$(001)

如果想自定义从几开始递增的话就利用:$@+数字*数字
例如:ul>li*3.test$@3

  1. <ul>
  2. <li class="test3"></li>
  3. <li class="test4"></li>
  4. <li class="test5"></li>
  5. </ul>

7:文本({})

文本指令:{}

ul>li.test$*3{测试$} ({里面填写内容,可以和$一起组合使用哦}

  1. <ul>
  2. <li class="test1">测试1</li>
  3. <li class="test2">测试2</li>
  4. <li class="test3">测试3</li>
  5. </ul>

8:隐式标签

这个标签没有指令,而是部分标签可以不使用输入标签,直接输入指令,即可识别父类标签。

例如:.test

  1. <div class="test"></div>

例如:ul>.test$*3

  1. <ul>
  2. <li class="test1"></li>
  3. <li class="test2"></li>
  4. <li class="test3"></li>
  5. </ul>

例如:select>.test$*5

  1. <select name="" id="">
  2. <option class="test1"></option>
  3. <option class="test2"></option>
  4. <option class="test3"></option>
  5. <option class="test4"></option>
  6. <option class="test5"></option>
  7. </select>

等等…
隐私标签有如下几个:

  • li:用于 ul 和 ol 中
  • tr:用于 table、tbody、thead 和 tfoot 中
  • td:用于 tr 中
  • option:用于 select 和 optgroup 中

最后就是:看没用,操作几遍,几分钟你就能掌握这些指令,然后飞快的撸码

到此这篇关于HTML速写之Emmet语法规则的实现的文章就介绍到这了,更多相关HTML Emmet语法内容请搜索w3xue以前的文章或继续浏览下面的相关文章,希望大家以后多多支持w3xue!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号