本内容基于Windows环境)
一、已安装有Sublime Text3
二、安装Package Control
安装这个后,可以在线安装所需的插件
方法1、Ctrl+~打开控制台,在控制台输入如下的Python命令
import urllib.request,os;pf='Package Control.sublime-package';ipp=sublime.installed_packages_path();urllib.request.install_opener(urllib.request.build_opener(urllib.request.ProxyHandler()));open(os.path.join(ipp,pf),'wb').write(urllib.request.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())
等待下载安装。
方法2、下载Package Control插件包到插件目录
插件目录在菜单中打开Preference--Browse Packages,没有自己新建一个
按照提示重启Sublime Text3,如果在Preferences->package settings中有看到package control这一项,则安装成功,如果没有,参照方法2可以下载package Control手动安装
三、安装插件
常用的命令:Install Package(安装扩展)
List Package(列出全部扩展)
Remove Package(移除扩展)
Upgrade Package(升级扩展)
1、Emmet插件的安装
1)Ctrl+Shift+P:调出控制面板
2)搜索框键入Install Package命令(也可以简写)并回车,然后在列表选择Emmet(也可以直接搜索Emmett进行检索)
3)点击确定等待安装
4)自动安装结束会自动弹出一个插件的安装信息的文件。重新调出控制面板,键入List Package列出全部扩展,查看是否已经安装成功。
Emmet常用技巧:(输入下面简写,按Tab键可触发效果)
生成 HTML 文档初始结构
html:5 或者 ! 生成 HTML5 结构
html:xt 生成 HTML4 过渡型
html:4s 生成 HTML4 严格型
生成带有 id 、class 的 HTML 标签
Emmet 默认的标签为 div ,如果我们不给出标签名称的话,默认就生成 div 标签。
编写一个 class 为 bbb 的 span 标签,我们需要编写下面指令:
span.bbb
编写一个 id 为 ccc 的 class 为 ddd 的 ul 标签
ul#ccc.ddd
生成后代:>
大于号表示后面要生成的内容是当前标签的后代。
要生成一个无序列表,而且被 class 为 aaa 的 div 包裹
div.aaa>ul>li
生成一个有序列表
.abc>ol>li
生成兄弟:+
上面是生成下级元素,如果想要生成平级的元素,就需要使用 + 号
div+p+bq
生成上级元素:^
上级 (Climb-up)元素是什么意思呢?前面咱们说过了生成下级元素的符号“>”,当使用 div>ul>li 的指令之后,再继续写下去,那么后续内容都是在 li 下级的。如果我想编写一个跟 ul 平级的 span 标签,那么我需要先用 “^” 提升一下层次
div>ul>li^span
重复生成多份:*
重复生成多份:*
特别是一个无序列表,ul 下面的 li 肯定不只是一份,通常要生成很多个 li 标签。那么我们可以直接在 li 后面 * 上一些数字:
ul>li*5
生成分组:()
用括号进行分组,这样可以更加明确要生成的结构,特别是层次关系
div>(header>ul>li*2>a)+footer>p
生成自定义属性:[attr]
a 标签中往往需要附带 href 属性和 title 属性,如果我们想生成一个 href 为 “http://blog.wpjam.com” ,title 为“我爱水煮鱼”的 a 标签
a[href="http://blog.wpjam.com" title="我爱水煮鱼"]
对生成内容编号:$
如无序列表,我想为五个 li 增加一个 class 属性值 item1 ,然后依次递增从 1-5,那么就需要使用 $ 符号:
ul>li.item$*5
$ 就表示一位数字,只出现一个的话,就从1开始。如果出现多个,就从0开始。如果我想生成三位数的序号,那么要写三个 $
ul>li.item$$$*5
只能这样单调的生成序号?对于强大的 Emmet 来说,肯定不会会了,我们也可以在 $ 后面增加 @- 来实现倒序排列
ul>li.item$@-*5
同样,我们也可以使用 @N 指定开始的序号:
ul>li.item$@3*5
生成文本内容:{}
上面讲解了如何生成 HTML 标签,那里面的内容呢?当然也可以生成了:
a[href="http://blog.wpjam.com"]{点击这里到 我爱水煮鱼}
在生成内容的时候,特别要注意前后的符号关系,虽然 a>{Click me} 和 a{Click me} 生成的结构是相同的,但是加上其他的内容就不一定了
<!-- a{click}+b{here} -->
<a href="">click</a><b>here</b>
<!-- a>{click}+b{here} -->
<a href="">click<b>here</b></a>
不要有空格
在写指令的时候,你可能为了代码的可读性,使用一些空格什么的排版一下。这就会导致代码无法使用。
CSS中的应用
编写 position: absolute; 这一个属性,我们只需要输入 posa 这四个字母即可
1、简写属性和属性值
如果你想生成 width:100px; 你只需要输入 w100 就可以了,因为 Emmet 的默认设置 w 是 width 的缩写,后面紧跟的数字就是属性值。默认的属性值单位是 px ,你可以在值的后面紧跟字符生成单位,可以是任意字符。例如,w100foo 会生成 width:100foo; 这样一条语句。你同样也可以简写属性单位,如果你紧跟属性值后面的字符是 p ,那么将会生成 width:100%; 这样的语句,其中 p 表示百分比单位。与此类似的还有:e → em; x → ex
margin 这样的属性,可能并不是一个属性值,生成多个属性值需要用横杠(-)连接两个属性值,因为 Emmet 的指令中是不允许空格的。例如使用 m10-20 这条命令可以生成 margin: 10px 20px; 这样一条语句。如果你想生成负值,多加一条横杠即可。需要注意的是,如果你对每个属性都指定了单位,那么不需要使用横杠分割。例如使用 m10ff20ff 这条命令可以生成 margin: 10ff 20ff; 这条语句,如果你在 20ff 前面加了横杠的话,20ff 就会变成负值了
你想一次生成多条语句,可以使用 ‘+’ 连接两条语句,例如使用 h10p+m5e 可以生成 height: 10%;margin: 5em; 这两条语句
颜色值也是可以快速生成的,例如 c#3 → color: #333;,更复杂一点的,使用 bd5#0s 可以生成border: 5px #000 solid; 这样一句
#1 → #111111
#e0 → #e0e0e0
#fc0 → #ffcc00
生成 !important 这条语句也当然很简单,只需要一个 ‘!’ 就可以了
2、增加额外的选项
使用 @f 即可生成 CSS3 中的 font-face 的代码结构
background-image、 border-radius、 font、@font-face、 text-outline、 text-shadow 等属性,我们可以在生成的时候输入 ‘+’ 生成增强的结构,例如我们可以输入 @f+ 命令,即可输出选项增强版的 font-face 结构
3、增加实验性前缀(Vendor Prefixes)
CSS3 等现在还没有出正式的 W3C 规范,但是很多浏览器已经实现了对应的功能,仅作为测试只用,所以在属性前面加上自己独特的实验性前缀,不同的浏览器只会识别带有自己规定前缀的样式。然而为了实现兼容性,我们不得不编写大量的冗余代码,而且要加上对应的前缀。使用 Emmet 可以快速生成带有前缀的 CSS3 属性。
内置了一些常见的需要实验性前缀的 CSS3 属性,例如输入 trf 会弹出提示,然后敲击回车键即可生成。而 Emmet 增强了这个功能。在任意字符前面加上一条横杠(-),即可生成该属性的带前缀代码,例如输入 -foo-css
虽然 foo-css 并不是什么属性,但是照样可以生成。此外,你还可以详细的控制具体生成哪几个浏览器前缀或者先后顺序,使用 -wm-trf 即可生成
w 就是 webkit 前缀的缩写,m 是 moz 前缀缩写,s 是 ms 前缀缩写,o 就是 opera 浏览器前缀的缩写。如果使用 -osmw-abc 即可生成
4、生成渐变背景
CSS3 中新增加了一条属性 linear-gradient 使用这个属性可以直接制作出渐变的效果。但是这个属性的参数比较复杂,而且需要添加实验性前缀,无疑需要生成大量代码。而在 Emmet 中使用 lg() 指令即可快速生成,例如:使用 lg(left, #fff 50%, #000) 可以直接生成:
Emmet高级功能介绍:
5、生成 Lorem Ipsum
Lorem Ipsum 表示一段随机看不懂的文字。Lorem Ipsum的文字让人看不懂,这样才能忽略内容的含义而专注内容的排版,作为测试数据填充用的。使用 Emmet 生成Lorem Ipsum 文本非常简单,只需要使用 lorem 这一条命令即可,敲击 Tab 键之后
Emmet 的 lorem 命令不仅仅只有输出这么一段文字这样一个简单的功能,它既然作为测试数据,可以加上参数指定要输出的字符数量。例如,我们如果想输出一个十个单词的 h1 标题,我们就可以使用如下命令 h1>lorem10 。但是这项功能对于使用中文的网页测试来说,好像没有多大用处,毕竟中文和英语单词的排版是不同的。
6、跳转编辑区域
用 Shift+Ctrl+. 和 Shift+Ctrl+,分别向下或者向上移动,选取的是一整块,先从标签开始,再是整个属性,再是属性值。
7、增加图片的尺寸大小
将光标移动到代码段,摁下 Ctrl+U 即可让 Emmet 自动读取图片的尺寸添加上。前提条件是图片比较存在并且正确引用进来了
针对 <img> 标签的,会在后面加上 width、height 属性,如果是 background 引入的,会在下面加上 width、height 的 CSS 属性
8、更新 CSS 的属性值
想修改一下旋转的角度值,那么我们就需要依次修改或者按住 Ctrl 多个选中进行修改。使用 Emmet 的话,就方便多了,我们只需要修改其中一个,然后摁下 Shift+Ctrl+R 键即可更新其他的相关属性值
9、将图片资源转换成 data url 形式
将光标移动到 background: url() 中的图片位置的地方,按下 Ctrl+’ 即可将图片编码成 data url 格式。当然,前提条件是图片资源引用正确。