`
36kr
  • 浏览: 10038 次
最近访客 更多访客>>
文章分类
社区版块
存档分类

HTML代码简写法:Emmet和Haml

 
阅读更多

HTML代码写起来很费事,因为它的标签多。

一种解决方法是采用模板, 在别人写好的骨架内,填入自己的内容。还有一种就是我今天想要介绍的方法----简写法。

常用的简写法,目前主要是Emmet和Haml两种,本文都将加以介绍。

这两种简写法,功能相近,各有特点。考虑到Haml基于Ruby语言,我建议Ruby/Rails项目使用Haml,其他项目使用Emmet。

一、Emmet的用法

Emmet是一个编辑器插件,官方网站提供多编辑器支持。我一般使用vim,下面就以vim插件举例。

首先,按照vim插件文档进行安装。然后,新建一个文本文件,键入

  html:5

按一下"<Ctr+y>,"(先按ctrl键+y键,然后再按逗号键,不同的编辑器有不同的转化键),这一行就立刻变成下面的样子。

  <!DOCTYPE html>
  <html lang="en">
  <head>
    <meta charset="UTF-8">
    <title></title>
  </head>
  <body>

  </body>
  </html>

这就是Emmet的基本用法:先写简写形式,然后用"<Ctrl+y>,"将其转成HTML代码。

Emmet支持的简写规则,类似于CSS选择器(大写的E代表一个HTML标签):

  1. E 代表HTML标签。

  2. E#id 代表id属性。

  3. E.class 代表class属性。

  4. E[attr=foo] 代表某一个特定属性。

  5. E{foo} 代表标签包含的内容是foo。

  6. E>N 代表N是E的子元素。

  7. E+N 代表N是E的同级元素。

  8. E^N 代表N是E的上级元素。

请看下面的例子。

  p

  p#main.item

  a[href=http://Wikipedia.org]{维基百科}

  div>p

  div+p

  p>span^div

对应的HTML代码为:

  <p></p>

  <p id="main" class="item"></p>

  <a href="http://Wikipedia.org">维基百科</a>

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

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

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

Emmet还提供了连写(E*N)和自动编号(E$*N)功能。

  li*3>a

  div#item$.class$$*3

对应的HTML代码为

  <li><a href=""></a></li>
  <li><a href=""></a></li>
  <li><a href=""></a></li>

  <div id="item1" class="class01"></div>
  <div id="item2" class="class02"></div>
  <div id="item3" class="class03"></div>

Emmet使用按键"<Ctrl+y>/",让一个代码块变成HTML注释。更多功能请参考以下链接:

  * Zeno Rocha, Goodbye, Zen Coding. Hello, Emmet!

  * Sergey Chikuyonok, Zen Coding: A Speedy Way To Write HTML/CSS Code

  * Joshua Johnson, 7 Awesome Emmet HTML Time-Saving Tips

  * Zen-coding vim tutorial

二、Haml的用法

Haml不同于emmet,它是一个命令行工具。需要先安装Ruby语言,再安装Haml。

  gem install haml

使用时,用命令行将haml文件一次性转为html文件。

  haml input.haml output.html

haml的简化规则如下:

  1. !!! 5 代表 <!DOCTYPE html>

  2. %E 代表HTML标签。

  3. %E#id 代表id属性。

  4. %E.class 代表class属性

  5. %E(attr="xxx") 代表某一个特定属性。

  6. %E XXX 代表插入标签的内容。

  7. %E %N 代表N是E的子元素。N如果写在第二行,需要缩进。

下面是Haml的代码示例,代码块的层级关系用缩进表示。

  !!! 5
  %html{lang: 'en'}
    %head
      %title Haml Demo
    %body
      %h1 Hello World
      %a(href="http://" title="Wikipedia") 维基百科

对应的HTML代码为:

  <!DOCTYPE html>
  <html lang='en'>
    <head>
      <title>Haml Demo</title>
    </head>
    <body>
      <h1>Hello World</h1>
      <a href='http://Wikipedia.org' title='Wikipedia'>维基百科</a>
    </body>
  </html>

在Haml中,"/ "起首的行表示HTML注释,"-# "起首的行表示Haml注释。 更多功能请参考以下链接。

分享到:
评论

相关推荐

    emmet插件,代码提示插件

    Emmet 是一款强大的前端开发辅助工具,尤其在HTML和CSS编码过程中,它的代码补全和快速编写功能大大提升了开发效率。这款插件最初名为“Zen Coding”,由Dmitry Fadeyev开发,后来更名为Emmet,现在已经在各种流行的...

    emmet-vim:vimet的emmet:http:emmet.io

    Emmet-Vim是针对Vim编辑器的一个扩展,它为HTML和CSS编写提供了极大的便利,尤其是在快速编写和编辑代码时。这个扩展是基于流行的前端开发工具Emmet(原名Zen Coding),Emmet.io是它的官方网站。Emmet的核心理念是...

    emmet-sublime-master

    8. **代码折叠**:Emmet可以帮助折叠和展开HTML或CSS的块级元素,方便查看和编辑大段代码。 9. **重命名和移动元素**:Emmet提供了便捷的命令来重命名或移动整个HTML元素及其子元素,这对于重构代码非常有用。 10....

    Emmet从一张图片学习

    这个名为“Emmet从一张图片学习”的资料包,很可能是通过一张图片来直观地展示Emmet的各种功能和使用技巧,帮助初学者快速掌握这个强大的代码辅助神器。 Emmet(原名Zen Coding)最初是为Sublime Text和Notepad++等...

    emmet eclipse plugin

    Emmet 是一个强大的前端开发工具,它极大地提高了HTML和CSS编码的效率。原名为Zen Coding,这个插件在Eclipse环境中被广泛使用,为开发者提供了快速编写和编辑HTML及CSS代码的功能。通过简短的缩写,Emmet可以自动...

    emmet Eclipse 插件(包含源代码)

    总之,“emmet Eclipse 插件(包含源代码)”是一个非常有价值的资源,无论是对于初学者想要了解Emmet的工作原理,还是对于经验丰富的开发者想要定制和优化自己的开发环境,都具有极高的参考价值。在Eclipse中利用...

    Emmet for Sublime Text 3 HTML/CSS代码快速编写神器

    Sublime Text 3的HTML/CSS代码快速编写神器:Emmet,使用方法:直接解压到Sublime Text 3安装路径下,如C:\Software\Sublime Text3\Emmet,注意Emmet文件名的大小写。

    eclipse插件emmet

    Emmet会自动生成相应的HTML代码。 5. **自定义和扩展**:Emmet允许用户自定义快捷方式和语法,以适应个人的编码习惯。你可以在Eclipse的首选项设置中找到Emmet的相关配置。 6. **CSS支持**:Emmet不仅限于HTML,它...

    emmet-monaco-es:Emmet对摩纳哥编辑器的支持

    Emmet-摩纳哥 Emmet对支持兼容性与Monaco Editor v0.22.0及更高版本兼容。 如果您使用的是旧版本的Monaco Editor,请使用此库的v4.4.2 。优势与VSCode的内置emmet几乎相同,并与完成提供程序集成。 HTML / JSX / TSX...

    emmet-npp.zip

    在Notepad++中安装Emmet插件,可以显著提升编写HTML和CSS代码的速度。下面将详细介绍Emmet的一些核心功能和如何在Notepad++中使用它。 1. **缩写展开**:Emmet的核心功能之一是缩写展开。例如,输入`div&gt;ul&gt;li*3`并...

    formation-emmet:Emmet的入门培训

    来练习 : 克隆或下载项目以访问演示和练习文件。 另请参阅下面的资源以了解更多信息。Emmet,这是什么? Emmet是一种工具,可让您执行以下操作: 编码更快, 提高生产力, 避免犯错误。 在一行中动态生成(有时很大...

    Sublime的emmet插件

    Emmet是前端开发人员常用的代码辅助工具,尤其在HTML和CSS编写中,它极大地提高了工作效率。Sublime Text是一款广受欢迎的轻量级、高度可定制的文本编辑器,支持多种编程语言和插件,其中Emmet插件是其增强代码编写...

    sublime text2 plugin - emmet

    8. **Pretty Print(美化打印)**:Emmet可以对HTML和CSS代码进行格式化,使代码更加整洁易读。 9. **Update snippets(更新片段)**:如果你已经写好了一个HTML结构,可以通过Emmet的更新片段功能快速修改,如增加...

    emmet-docs:Emmet文档和教程

    Emmet工具包的官方文档站点 目前,主要的网站框架已经完成(可能还有一些错误),而我目前正在编写Emmet工具箱的文档。 文档本身位于src/documents文件夹中。 该网站使用生成静态网站。 本地设置 要在本地运行此...

    sublime text 2

    6. **代码格式化**:Emmet还可以帮助整理和格式化HTML和CSS代码,保持代码整洁。 Sublime Text 2与Emmet的结合使用,使得前端开发者在编写网页代码时更加得心应手。如果你是Web前端开发者或者经常处理代码,Sublime...

    coc-emmet:coc.nvim的Emmet扩展

    coc-emmet Emmet完成对支持 VSCode的emmet扩展的,仅具有完成支持。 注意:这个。... emmet.variables :Emmet代码段中使用的变量 emmet.syntaxProfiles :为指定的语法定义配置文件,或将您自己的配置文件用

    notepad++集成emmet

    Emmet(原名Zen Coding)是一个高效的Web开发编码工具,它通过简短的缩写,能够快速生成复杂的HTML和CSS代码,极大地提高了开发者的生产力。 Emmet的核心功能包括: 1. **代码片段扩展**:在输入少量字符后,按Tab...

    EmmetNPP_x64

    Emmet,原名Zen Coding,是前端开发者广泛使用的代码辅助工具,它简化了编写重复HTML和CSS结构的过程。在Nodepad++编辑器中集成Emmet,可以让开发者享受到快捷的代码补全和缩写展开功能。 1. **Emmet的核心功能**:...

    emmet-atom:Emmet对Atom的支持

    Emmet插件Atom编辑器 对支持。 安装 在Atom中,打开“偏好设置” (Windows上的“设置”) 转到安装部分 搜索Emmet软件包。 找到它后,单击“ Install按钮以安装软件包。 手动安装 您可以从控制台手动安装最新的...

Global site tag (gtag.js) - Google Analytics