Emmet缩写可以快速地生成
HTML代码的结构化标签,在我们编写
HTML代码时节省了很多时间,提高了工作效率,让前端开发人员也不会感觉太繁琐,今天我们来介绍下Emmet如何快速编写CSS样式。
Sublime Text本身对CSS的编写也提供了相当多的缩写,而且也带有记忆功能,比如写左浮动我们只需输入fll,Sublime Text就会出现提示,回车就可得到标准的float: left;。
有了Emmet就更加快速,编写左浮动只需输入fl。对于CSS样式,Emmet有一个特殊的CSS解析器,有很多预定义的代码片段,例如输入m即可生成margin: ;代码片段。而margin需要赋值,输入m10即可生成margin: 10px;用Emmet编写CSS样式,也是遵循CSS样式的一个基本写法。
基本的CSS样式编写时,很多样式只需输入首字母即可得到不带属性值的CSS样式,像上面说到的margin。
1、而对于一些带有特定的属性值的CSS样式,只需输入CSS标签与属性值的首字母就可以,比如:
2、而在编写这些CSS样式时,有很多是我们想好的写法,但生成的不是你想要的,比如position: absolute;,我们会输入pa,生成的就不是position: absolute;,这时我们可以:
- poa → position: absolute;
3、一些用-连接的CSS样式和属性值,都可以取首字母:
- whscbs → whitewhite-space-collapse:break-strict;
4、输出默认的CSS样式+,用+操作符,比如:
- bg+ → background: #fff url() 0 0 no-repeat;
5、参数别名,Emmet为几个常用的单位值提供了别名:
6、你可以使用别名代替完整的单位:
- w100p → width: 100%
- m10p30e5x → margin: 10% 30em 5ex
7、颜色值,Emmet支持十六进制的颜色值:
8、#是一个值分离器,所以不需要使用连字符分隔它,例如:
- bd5#0s → border: 5px #000 solid:
9、你可以写一个,两个,三个或六个字符颜色值,Emmet都会正确解析为十六进制的颜色值:
- #1 → #111111
- #e0 → #e0e0e0
- #fc0 → #ffcc00
10、属性值没有单位的CSS缩写:
- lh2 → line-height: 2;, fw400 → font-weight: 400;
这些CSS属性有:
- z-index, line-height, opacity and font-weight
11、!important 修饰符的写法:
在我们编写好了CSS样式,需要添加!important时,只需要在后面输入!(!前需要有空格,因为这是在CSS样式基础上),再按Tab键即可:
- float: left !; → float: left !important;
12、在编写Emmet代码时需要添加!important,我们可以这样写:
- fl! → float: left !important;
- p6! → padding: 6px !important;
13、对于有多个属性值的CSS属性,在编写时只需在属性值之间添加-:
- m4-6 → margin: 4px 6px;
- p4-6-8 → padding: 4px 6px 8px;
14、@font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,而@font-face的结构是比较复杂,有background-image、 border-radius、 font、@font-face、 text-outline、 text-shadow 等属性,用Emmet编写可以让它变得相当的简单,快速,只需输入@f+即可生成:
- @font-face {
- font-family: 'FontName';
- src: url('FileName.eot');
- src: url('FileName.eot?#iefix') format('embedded-opentype'),
- url('FileName.woff') format('woff'),
- url('FileName.ttf') format('truetype'),
- url('FileName.svg#FontName') format('svg');
- font-style: normal;
- font-weight: normal;
- }
15、前缀:
CSS3一些新的特性对于我们前端开发人员是一个重要的更新,用几行代码就可以实现强大的功能,这是之前的CSS样式不可能实现的。但这也是一种痛苦,对于不同的浏览器我们需要多次写相同的样式。[/slidenormal]
Emmet的CSS解析器有一个很好的功能,可以大大改善为了解决浏览器兼容性而多次写的属性。例如圆角属性,-bdrs4就可生成:
- -webkit-border-radius: 4px;
- -moz-border-radius: 4px;
- border-radius: 4px;
16、对于一些前缀,Sublime Text中也内置了一些属性的前缀,比如输入trf即可得到:
- -webkit-transform: |;
- -moz-transform: |;
- -ms-transform: |;
- -o-transform: |;
- transform: |;
17、在Emmet中,在任意两个字符前面添加-操作符,都可以生成带前缀的属性值,比如-float-d:
- -webkit-float-d: |;
- -moz-float-d: |;
- -ms-float-d: |;
- -o-float-d: |;
- float-d: |;
18、CSS3一个新的、也相当重要的特性是渐变,渐变的属性值又比较复杂,如果再兼容所有的浏览器,代码量是相当大的。而Emmet有一个CSS3渐变的解析器,可以帮我们把这项复杂的工作快速的完成:
将生成:
- background-image: -webkit-gradient(linear, 0 0, 100% 0, );
- background-image: -webkit-linear-gradient(left #f90 20% red);
- background-image: -moz-linear-gradient(left #f90 20% red);
- background-image: -o-linear-gradient(left #f90 20% red);
- background-image: linear-gradient(left #f90 20% red);
19、在lg()括号中需要有值,不然Emmet会解析成left: ;。
Emmet编写CSS样式还有很多需要注意的地方,而写出来比较困难,到官方网站看看CSS样式的缩写,会更明白。
Emmet还有很多强大的功能,下次再整理Emmet的高级功能与大家分享。
评论:
3 条评论,访客:0 条,博主:0 条