搜索
首页web前端html教程Emmet:HTML/CSS代码快速编写神器_html/css_WEB-ITnose

Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生。它使用仿CSS选择器的语法来生成代码,大大提高了HTML/CSS代码编写的速度,比如下面的演示: 

 
Zen coding下的编码演示



去年年底,该插件已经改名为Emmet。但Emmet不只改名,还带来了一些新特性。本文就来直观地演示给你。 

一、快速编写HTML代码 

1.  初始化 

HTML文档需要包含一些固定的标签,比如、

、等,现在你只需要1秒钟就可以输入这些标签。比如输入“!”或“html:5”,然后按Tab键: 



  • html:5 或!:用于HTML5文档类型
  • html:xt:用于XHTML过渡文档类型
  • html:4s:用于HTML4严格文档类型
  • 2.  轻松添加类、id、文本和属性 

    连续输入元素名称和ID,Emmet会自动为你补全,比如输入p#foo: 



    连续输入类和id,比如p.bar#foo,会自动生成: 

    Html代码 

    1.   


    下面来看看如何定义HTML元素的内容和属性。你可以通过输入h1{foo}和a[href=#],就可以自动生成如下代码:

    Html代码 

    1. foo

        
    2.   

     



    3.  嵌套 

    现在你只需要1行代码就可以实现标签的嵌套。 

  • >:子元素符号,表示嵌套的元素
  • +:同级标签符号
  • ^:可以使该符号前的标签提升一行
  • 效果如下图所示: 



    4.  分组 

    你可以通过嵌套和括号来快速生成一些代码块,比如输入(.foo>h1)+(.bar>h2),会自动生成如下代码: 

    Html代码 

    1.   
    2.   

        
      
  •   
  •   

      
  •   

     



    5.  隐式标签 

    声明一个带类的标签,只需输入div.item,就会生成

    。 

    在过去版本中,可以省略掉div,即输入.item即可生成
    。现在如果只输入.item,则Emmet会根据父标签进行判定。比如在
      •   
    1.   
    2.   
    3.   
    4.   
    5.   
    6.   
    7.   





    7.  定义多个带属性的元素 

    如果输入 ul>li.item$*3,将会生成如下代码: 

    Html代码 

      •   
    1.   
    2.   
    3.   
    4.   
    5.   
    6.   
    7.   





    二、CSS缩写 

    1.  值 

    比如要定义元素的宽度,只需输入w100,即可生成 

    Css代码 

    1. width: 100px;  

     



    除了px,也可以生成其他单位,比如输入h10p+m5e,结果如下: 

    Css代码 

    1. height: 10%;  
    2. margin: 5em;  



    单位别名列表: 

  • p 表示%
  • e 表示 em
  • x 表示 ex
  • 2.  附加属性 

    可能你之前已经了解了一些缩写,比如 @f,可以生成: 

    Css代码 

    1. @font-face {  
    2.   font-family:;  
    3.   src:url();  
    4. }  


    一些其他的属性,比如background-image、border-radius、font、@font-face,text-outline、text-shadow等额外的选项,可以通过“+”符号来生成,比如输入@f+,将生成: 

    Css代码 

    1. @font-face {  
    2.   font-family: 'FontName';  
    3.   src: url('FileName.eot');  
    4.   src: url('FileName.eot?#iefix') format('embedded-opentype'),  
    5.      url('FileName.woff') format('woff'),  
    6.      url('FileName.ttf') format('truetype'),  
    7.      url('FileName.svg#FontName') format('svg');  
    8.   font-style: normal;  
    9.   font-weight: normal;  
    10. }  

     



    3.  模糊匹配 

    如果有些缩写你拿不准,Emmet会根据你的输入内容匹配最接近的语法,比如输入ov:h、ov-h、ovh和oh,生成的代码是相同的: 

    Css代码 

    1. overflow: hidden;  

     



    4.  供应商前缀 

    如果输入非W3C标准的CSS属性,Emmet会自动加上供应商前缀,比如输入trs,则会生成: 

    Css代码 

    1. -webkit-transform: ;  
    2. -moz-transform: ;  
    3. -ms-transform: ;  
    4. -o-transform: ;  
    5. transform: ;  

     



    你也可以在任意属性前加上“-”符号,也可以为该属性加上前缀。比如输入-super-foo: 

    Css代码 

    1. -webkit-super-foo: ;  
    2. -moz-super-foo: ;  
    3. -ms-super-foo: ;  
    4. -o-super-foo: ;  
    5. super-foo: ;  


    如果不希望加上所有前缀,可以使用缩写来指定,比如-wm-trf表示只加上-webkit和-moz前缀: 

    Css代码 

    1. -webkit-transform: ;  
    2. -moz-transform: ;  
    3. transform: ;  


    前缀缩写如下: 

  • w 表示 -webkit-
  • m 表示 -moz-
  • s 表示 -ms-
  • o 表示 -o-
  • 5.  渐变 

    输入lg(left, #fff 50%, #000),会生成如下代码: 

    Css代码 

    1. background-image: -webkit-gradient(linear, 0 0, 100% 0, color-stop(0.5, #fff), to(#000));  
    2. background-image: -webkit-linear-gradient(left, #fff 50%, #000);  
    3. background-image: -moz-linear-gradient(left, #fff 50%, #000);  
    4. background-image: -o-linear-gradient(left, #fff 50%, #000);  
    5. background-image: linear-gradient(left, #fff 50%, #000);  

     



    三、附加功能 

    生成Lorem ipsum文本 

    Lorem ipsum指一篇常用于排版设计领域的拉丁文文章,主要目的是测试文章或文字在不同字型、版型下看起来的效果。通过Emmet,你只需输入lorem 或 lipsum即可生成这些文字。还可以指定文字的个数,比如lorem10,将生成: 

    引用

    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Libero delectus.

     



    四、定制 

    你还可以定制Emmet插件: 

  • 添加新缩写或更新现有缩写,可修改snippets.json文件
  • 更改Emmet过滤器和操作的行为,可修改preferences.json文件
  • 定义如何生成HTML或XML代码,可修改syntaxProfiles.json文件

  • 五、针对不同编辑器的插件 

    Emmet支持的编辑器如下(链接为针对该编辑器的Emmet插件): 

  • Sublime Text 2
  • TextMate 1.x
  • Eclipse/Aptana
  • Coda 1.6 and 2.x
  • Espresso
  • Chocolat (通过“Install Mixin”对话框添加)
  • Komodo Edit/IDE (通过Tools → Add-ons菜单添加)
  • Notepad++
  • PSPad
  • CodeMirror2/3
  • Brackets
  • 相关文档:http://docs.emmet.io/(其中包含了一个Demo,你可以试验文中所提到的这些缩写) 

    Via smashingmagazine

    转自http://www.iteye.com/news/27580

    声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    如何在标签上设置lang属性?为什么这很重要?如何在标签上设置lang属性?为什么这很重要?May 08, 2025 am 12:03 AM

    设置标签的lang属性是优化网页可访问性和SEO的关键步骤。1)在标签中设置lang属性,如。2)在多语言内容中,为不同语言部分设置lang属性,如。3)使用符合ISO639-1标准的语言代码,如"en"、"fr"、"zh"等。正确设置lang属性可以提高网页的可访问性和搜索引擎排名。

    HTML属性的目的是什么?HTML属性的目的是什么?May 07, 2025 am 12:01 AM

    htmlattributeseresene forenhancingwebelements'functionalityandAppearance.TheyAdDinformationTodeFineBehavior,外观和互动,使网站互动,响应式,visalalyAppealing.AttributesLikutesLikeSlikEslikesrc,href,href,href,类,类型,类型,和dissabledtransfransformformformformformformformformformformformformformformforment

    您如何在HTML中创建列表?您如何在HTML中创建列表?May 06, 2025 am 12:01 AM

    toCreateAlistinHtml,useforforunordedlistsandfororderedlists:1)forunorderedlists,wrapitemsinanduseforeachItem,RenderingeringAsabulleTedList.2)fororderedlists,useandfornumberedlists,useandfornumberedlists,casundfornumberedlists,customeizableWithTheTtheTthetTheTeTeptTributeFordTributeForderForderForderFerentNumberingSnumberingStyls。

    HTML行动:网站结构的示例HTML行动:网站结构的示例May 05, 2025 am 12:03 AM

    HTML用于构建结构清晰的网站。1)使用标签如、、定义网站结构。2)示例展示了博客和电商网站的结构。3)避免常见错误如标签嵌套不正确。4)优化性能通过减少HTTP请求和使用语义化标签。

    您如何将图像插入HTML页面?您如何将图像插入HTML页面?May 04, 2025 am 12:02 AM

    toinsertanimageIntoanhtmlpage,usethetagwithsrcandaltattributes.1)usealttextforAcccessibilityandseo.2)instementRcsetForresponSiveImages.3)applylazyloadingWithLoadingWithLoading =“ lazy” tooptimizeperformance.4)tooptimizeperformance.4)

    HTML的目的:启用Web浏览器可以显示内容HTML的目的:启用Web浏览器可以显示内容May 03, 2025 am 12:03 AM

    HTML的核心目的在于让浏览器理解并展示网页内容。1.HTML通过标签定义网页结构和内容,如、到、等。2.HTML5增强了多媒体支持,引入了和标签。3.HTML提供了表单元素,支持用户交互。4.优化HTML代码可提升网页性能,如减少HTTP请求和压缩HTML。

    为什么HTML标签对Web开发很重要?为什么HTML标签对Web开发很重要?May 02, 2025 am 12:03 AM

    htmltagsareessentialforwebdevelopmentastheyandendenhancewebpages.1)heSdefinElayout,语义和互动性。2)SemantictagsiCtagSimproveCacsibilitieAndseo.3)pose poseriblesibilityAndseoandseo.3)poser

    说明将一致的编码样式用于HTML标签和属性的重要性。说明将一致的编码样式用于HTML标签和属性的重要性。May 01, 2025 am 12:01 AM

    一致的HTML编码风格很重要,因为它提高了代码的可读性、可维护性和效率。1)使用小写标签和属性,2)保持一致的缩进,3)选择并坚持使用单引号或双引号,4)避免在项目中混合使用不同风格,5)利用自动化工具如Prettier或ESLint来确保风格的一致性。

    See all articles

    热AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驱动的应用程序,用于创建逼真的裸体照片

    AI Clothes Remover

    AI Clothes Remover

    用于从照片中去除衣服的在线人工智能工具。

    Undress AI Tool

    Undress AI Tool

    免费脱衣服图片

    Clothoff.io

    Clothoff.io

    AI脱衣机

    Video Face Swap

    Video Face Swap

    使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

    热工具

    DVWA

    DVWA

    Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

    mPDF

    mPDF

    mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

    WebStorm Mac版

    WebStorm Mac版

    好用的JavaScript开发工具

    VSCode Windows 64位 下载

    VSCode Windows 64位 下载

    微软推出的免费、功能强大的一款IDE编辑器

    SublimeText3汉化版

    SublimeText3汉化版

    中文版,非常好用