`
qw232144
  • 浏览: 35592 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

html简化haml补全录

 
阅读更多

        前段时间写了一个html简化成haml的概述,但写的不全面,随着我自己用了将近一个月的实践我来把它补充一下。

       首先haml和html最大的区别在于haml简化了html的写法,省略了结束符,'<'  '>'符号也用%来表示。haml和html各有优劣,html的优点是它能够很清楚的显示一个标签的开头和结尾,是整个代码页面显得很清楚。但不停地写'<','>'和结尾符号显得过于麻烦,对于我这种懒人我更喜欢haml这种简化版的代码。

        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中没有复杂的开始结束符,只用一个%加标签名就可以了,但它也有一个缺点,就是如果使用haml就必须注意格式,因为haml没有结尾福,所以不能像html那样随便写。例如:

<div><a></a></div>           //html ,<div>标签中包含了一个<a>标签

<div>
<a></a></div>               //html ,<div>标签中包含了一个<a>标签
<div>
 
<div>
<a></a>
</div>      //html ,<div>标签中包含了一个<a>标签

%div %a         //haml,<div>标签中包含了一个<a>标签
%div 
  %a            ////haml,<div>标签中包含了一个<a>标签,注意写在第二行要缩进

%div
%a            //haml,<div>标签和<a>标签是并列关系 

在我们用编程工具写html,js,css等代码有一个快捷键可以整理代码,Ctrl+Alt+Win+L,在haml编写中也不起作用,所以要想用haml编写程序,就要注意格式。

       下面我来介绍也谢haml的用法。

       首先就是标签本某些特定的属性用%xx{:xxx=>"xxxx”}表示,如:

<div width="100%">     //html,div的宽度设为100%

%div{:style=>"width: 100%"}   //haml,div的宽度设为100%

//如果想多调用几个style,就用;隔开
%div{:style=>"width: 100%;height:100px"} 
//若果同时有多条特性,各属性之间用','隔开

%div{:style=>"width: 100%",onclick=>"function()",herf=>"xxxxxxxxxxxxx"}

       当然了我们通常是采用外部调用的,这里只是简单介绍一下。

       下面来说调用函数,html一般都是用<script></script>标签来实现的,把函数放在<head>或<body>标签中,然后用onclick调用,例如:

<!DOCTYPE html>
<html>
<head>
<script>
function myFunction()
{
document.getElementById("demo").innerHTML="My First JavaScript Function";
}
</script>
</head>
<body>
<h1>My Web Page</h1>
<p id="demo">A Paragraph</p>
<button type="button" onclick="myFunction()">Try it</button>
</body>
</html>

      而haml就省略了这些,直接在标签中onclick调用写在js文件中的function。例如:

%button{:onclick=>"Myfunction()“}

     这也是我喜欢haml的原因之一。

    而且在haml中我们可以不用写hade,body等标签,直接用div块来完成整个页面。

 

     当你需要调用较多时用,分隔开如:

%button{:class=>"mystyle",onclick=>"myfunction()"}

    haml想要显示文本内容,直接在标签后加入文本就可以了,例如:

%h1 这是一个标题
%button提交       //一个提交文本的按钮

    用haml给标签一个id有两种方法:

 //给div一个id为name

%div#name   
%div{:id=>"name"}

 其实任何编程语言之间的变换都是有规律的,只要你掌握了规律很快就能掌握一门编程语言。

分享到:
评论

相关推荐

    Ruby-Haml是一个HTML的模板引擎

    Ruby-Haml是一种高效的HTML模板引擎,它以简洁、易读的语法简化了HTML的编写过程。在Web开发中,模板引擎扮演着重要角色,它允许开发者将逻辑代码与呈现层的HTML结构分离,提升代码的可维护性和可读性。Haml是Ruby...

    MtHaml:PHP实现的HAML模板语言类库.zip

    HAML(HTML Abstraction Markup Language)是一种结构化模板语言,旨在简化HTML代码,提高可读性和易维护性,尤其在动态网站开发中广泛应用。`MtHaml` 的出现,使得 PHP 开发者能够享受到 HAML 带来的益处。 HAML ...

    为什么要使用HAML和SASS

    标题“为什么要使用HAML和SASS”涉及到的是前端开发中的两个重要工具——HAML(HTML Abstraction Markup Language)和SASS(Syntactically Awesome Style Sheets)。这两个工具都是为了提高HTML和CSS编码的效率和...

    前端项目-clientside-haml-js.zip

    它通过缩进和简化的语法减少HTML的冗余,使得代码更加结构化。Haml的语法通常比原生HTML更紧凑,因此更容易维护和理解。在本项目中,"clientside-haml-js" 提供了在客户端运行的Haml编译器,这意味着开发者可以直接...

    haml:HTML抽象标记语言-标记Haiku

    哈姆 Haml是HTML的模板引擎。 通过消除冗余,反映文档所表示的基础结构以及提供既强大又易于理解的优雅语法,它旨在使编写HTML文档变得更加轻松愉快。基本用法Haml可以从命令行使用,也可以作为Ruby Web框架的一部分...

    让脚手架直接生成Haml模板

    4. **使用插件**:有些Rails插件,如`haml-rails`,可以帮助简化上述过程。安装后,它会自动配置Rails以使用Haml,并可能提供额外的便利功能。 5. **运行脚手架**:现在,当你运行`rails generate scaffold ...

    Haml2Html:一个易于使用的编译器,用于使用Haml&Sass开发静态页面

    Haml2Html 一个易于使用的编译器,用于使用Haml&Sass开发静态页面。要求需要以下内容:安装将存储库克隆到本地计算机。 在您的终端中,导航到/haml2html 。 跑步 ./install这将检查需求并安装未安装的需求。用法将...

    MtHaml:PHP实现的HAML模板语言类库

    总之,MtHaml 是一个强大的PHP HAML模板引擎,它简化了HTML模板的编写,提升了开发效率,对于追求代码简洁和效率的开发者来说,是一个值得尝试的工具。通过深入学习和实践,你将能够充分利用 MtHaml 的优点,构建出...

    Laravel开发-laravel-blade-haml

    2. **简化的语法**:例如 `%div` 表示 `&lt;div&gt;` 元素,`#id` 或 `.class` 直接定义 ID 和类名。 3. **内联文本**:在元素后直接跟文本,无需使用双引号或尖括号。 4. **代码与内容分离**:通过 `-` 开头的行来插入 ...

    ruby-haml-loader:使用实际Ruby`haml`的Webpack Haml加载器

    用于Webpack的Ruby Haml加载程序 将Haml文件作为模块导入Webpack项目中。 返回渲染的模板。 这很慢。 它是为临时使用而创建的,直到转换为Jade。 此自述文件基于自述文件。 设置 添加到您的webpack配置模块....

    前端开源库-ewg-haml-coffee-gulp

    HAML(HTML Abstraction Markup Language)通过简洁、层次分明的语法,简化了HTML的编写。EWG HAML是Haml的一个变种,特别针对前端开发工作流进行了优化。它允许开发者以结构化的方式编写HTML,减少了代码中的冗余,...

    hamlet-compiler:Haml 的形式化语法

    这种特性极大地简化了视图层与模型层的交互,使得前端代码更加整洁,提高了开发效率。 在使用hamlet-compiler时,开发者首先需要安装这个库,然后就可以开始编写Haml模板。Haml的语法结构清晰,如 `%tagname` 用于...

    Ruby-Himl是一种基于HTML的Ruby缩进标记语言

    总结来说,Ruby-Haml是一种旨在简化HTML模板编写过程的语言,通过缩进和简洁的语法提高了代码可读性和开发效率。在Ruby开发中,Haml与Sass的结合使用,为Web应用的前端开发提供了一种高效、安全的解决方案。

    s-ublime-text-haml-sass-master.zip

    HAML(HTML Abstraction Markup Language)是一种简洁、清晰的HTML模板语言,它的语法比传统HTML更加简洁,减少了代码中的冗余,使得代码更易读、易写。HAML的主要特点包括缩进表示层级关系,%tagname创建元素,以及...

    haml-to-php:PHP的haml实现

    编写类似于ruby的haml实现的代码 在错误的标签嵌套上失败,例如table&gt; td&gt; tr 图书馆支持 请参阅如果您将对haml-to-php.com的支持添加到框架中,我想参考您的工作。 我知道的相关工作 请参阅此处。 最引人注目。 ...

    gulp-ruby-haml:用于Gulp的Haml插件,使用Ruby Haml gem

    这是一个,将使用该插件haml命令行脚本编译Haml的文件转换成HTML。 您需要同时安装Ruby和Haml才能使用此功能。 尝试gem install haml 。 如果使用 ,请将gem 'haml'添加到Gemfile中,然后运行bundle install 。 ...

    herbalizer:转换HAML到ERB

    用Haskell编写的HAML到ERB转换器。 该程序将模板转换为 。 为什么 很多人更喜欢HAML而不是ERB。 但不是每个人,也不是每个情况都如此。 ERB更简单,更容易记住规则,并且对HTML熟悉的人都可以访问。 ERB模板更易于...

    HAML.jl:JuliaHTML抽象标记语言。 受Ruby的HAML启发

    只需内联编写HAML代码,它将扩展为字符串: julia &gt; using HAMLjulia &gt; link = " https://youtu.be/dQw4w9WgXcQ "julia &gt; haml """ %html %body %a(href=link) Hello, world! """ |&gt; print&lt; html &gt; &lt; body...

    Middleman-HTML5BP-HAML:一个将HTML5 Boilerplate转换为HAML的中间人项目模板,包括Sprockets,SUSY等

    Middleman 3.0.x项目模板:HTML5 Boilerplate HAML,Normalize,Susy,Sprockets包括 HTML5 Boilerplate HAML是适用于HAML 项目模板,具有响应网格,可以使用 ,由 ,Coffeescript,Sprockets等。 强烈建议使用和 ...

    karma-haml-preprocessor:Karma 插件。 将haml脚本编译为html

    业力预处理器将 haml 脚本编译为 html 的 Karma 预处理器。 支持和作为语言编译器安装最简单的方法是将karma-haml-preprocessor作为 devDependency 保留在package.json 。 { " devDependencies " : { " karma-haml-...

Global site tag (gtag.js) - Google Analytics