HTML速写之Emmet语法规则的实现


Posted in HTML / CSS onApril 07, 2021

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

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

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

先来个例子:

HTML速写之Emmet语法规则的实现

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

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

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

开始讲解语法吧

1:html初始结构

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

HTML速写之Emmet语法规则的实现

2:id(#),class(.)

id指令:# ; class指令:.

div#test

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

div.test

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

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

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

div>ul>li>p

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

div+ul+p

<div></div>
<ul></ul>
<p></p>

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

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

4:重复(*)

重复指令:*

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

<div></div>
   <div></div>
   <div></div>
   <div></div>
   <div></div>

5:分组(())

分组指令:()

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

<div>
   <ul>
     <li><a href=""></a></li>
   </ul>
   <div>
     <p></p>
   </div>
 </div>

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

<div>
   <ul>
     <li>
       <a href=""></a>
       <div>
         <p></p>
       </div>
     </li>
   </ul

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

属性指令:[]

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

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

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

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

<ul>
   <li class="test1"></li>
   <li class="test2"></li>
   <li class="test3"></li>
 </ul>

注意

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

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

<ul>
   <li class="test3"></li>
   <li class="test4"></li>
   <li class="test5"></li>
 </ul>

7:文本({})

文本指令:{}

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

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

8:隐式标签

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

例如:.test

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

例如:ul>.test$*3

<ul>
   <li class="test1"></li>
   <li class="test2"></li>
   <li class="test3"></li>
 </ul>

例如:select>.test$*5

<select name="" id="">
  <option class="test1"></option>
  <option class="test2"></option>
  <option class="test3"></option>
  <option class="test4"></option>
  <option class="test5"></option>
</select>

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

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

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

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

 
HTML / CSS 相关文章推荐
CSS3 滤镜 webkit-filter详细介绍及使用方法
Dec 27 HTML / CSS
css3实现的多级渐变下拉菜单导航效果代码
Aug 31 HTML / CSS
纯CSS3实现扇形动画菜单(简化版)实例源码
Jan 17 HTML / CSS
html5服务器推送_动力节点Java学院整理
Jul 12 HTML / CSS
基于HTML5 audio元素播放声音jQuery小插件
May 11 HTML / CSS
移动HTML5前端框架—MUI的使用
Dec 18 HTML / CSS
HTML5离线应用与客户端存储的实现
May 03 HTML / CSS
canvas里面如何基于随机点绘制一个多边形的方法
Jun 13 HTML / CSS
利用Storage Event实现页面间通信的示例代码
Jul 26 HTML / CSS
Html5定位终极解决方案
Feb 05 HTML / CSS
HTML+CSS+JavaScript实现图片3D展览的示例代码
Oct 12 HTML / CSS
html原生table实现合并单元格以及合并表头的示例代码
May 07 HTML / CSS
使用Html+Css实现简易导航栏功能(导航栏遇到鼠标切换背景颜色)
Apr 07 #HTML / CSS
html+css 实现简易导航栏功能
Apr 07 #HTML / CSS
css3实现的加载动画效果
CSS3 天气图标动画效果
CSS3 制作精美的定价表
CSS 圆形进度栏
CSS 文字装饰 text-decoration & text-emphasis 详解
You might like
如何在PHP中使用正则表达式进行查找替换
2013/06/13 PHP
PHP单例模式是什么 php实现单例模式的方法
2016/05/14 PHP
PHP实现一个限制实例化次数的类示例
2019/09/16 PHP
JavaScript 学习点滴记录
2009/04/24 Javascript
关于Jquery操作Cookie取值错误的解决方法
2013/08/26 Javascript
JS复制内容到剪切板的实例代码(兼容IE与火狐)
2013/11/19 Javascript
原始XMLHttpRequest方法详情回顾
2013/11/28 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
jQuery中slidedown与slideup方法用法示例
2016/09/16 Javascript
vue.js学习笔记之绑定style样式和class列表
2016/10/31 Javascript
简单理解Vue条件渲染
2016/12/03 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
JavaScript实现简单的双色球(实例讲解)
2017/07/31 Javascript
vue-prop父组件向子组件进行传值的方法
2018/03/01 Javascript
angularjs实现的购物金额计算工具示例
2018/05/08 Javascript
angular6.0开发教程之如何安装angular6.0框架
2018/06/29 Javascript
vue+axios+mock.js环境搭建的方法步骤
2018/08/28 Javascript
Node.js API详解之 V8模块用法实例分析
2020/06/05 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
[06:42]DOTA2每周TOP10 精彩击杀集锦vol.1
2014/06/25 DOTA
[01:33:14]LGD vs VP Supermajor 败者组决赛 BO3 第二场 6.10
2018/07/04 DOTA
Python文件与文件夹常见基本操作总结
2016/09/19 Python
django框架CSRF防护原理与用法分析
2019/07/22 Python
wxPython绘图模块wxPyPlot实现数据可视化
2019/11/19 Python
解决reload(sys)后print失效的问题
2020/04/25 Python
python实点云分割k-means(sklearn)详解
2020/05/28 Python
欧缇丽美国官网:Caudalie美国
2016/12/31 全球购物
卡骆驰新加坡官网:Crocs新加坡
2018/06/12 全球购物
澳大利亚最好的电动自行车:Leon Cycle
2020/12/19 全球购物
init进程的作用
2012/04/12 面试题
写好自荐信要注意的问题
2013/11/10 职场文书
客服主管岗位职责
2013/12/13 职场文书
保外就医申请书范文
2015/08/06 职场文书
java设计模式--七大原则详解
2021/07/21 Java/Android
nginx代理实现静态资源访问的示例代码
2022/07/07 Servers