close
什麼是連前端工程師一定都要學的外掛?我聽得一頭霧水,就讓我們打開這個神秘的大門一窺究竟吧!!
身為一個前端工程師,一定要裝一個「省時神器」 Emmet 外掛,可以大大節省前端工程師在編寫 HTML 及 CSS 的時間。省下的時間可以讓你去體驗人生各種美好的事物,如玩玩喵星人、上上健身房運動等等。 Emmet 支援的網頁編輯器如下圖:
![Emmet 支援的網頁瀏覽器.png Emmet 支援的網頁瀏覽器.png](https://imageproxy.pixnet.cc/imgproxy?url=https://pic.pimg.tw/sweetuimother/1563897359-1639066660_n.png)
安裝的方式因個網頁編輯器而異,且在網路上皆可以查到,故此省略。以下小編先介紹基本的使用方式:
![Emmet中快速產生HTML5樣板](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%BF%AB%E9%80%9F%E7%94%A2%E7%94%9FHTML5%E6%A8%A3%E6%9D%BF.gif)
假設我們要產生一個 p 元素,那麼我們只要直接輸入 p 後,再按下 Ctrl+E 鍵,就能自動產生起始元素及結束元素。如下所示:
![起始元素與結束元素](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E8%B5%B7%E5%A7%8B%E5%85%83%E7%B4%A0%E8%88%87%E7%B5%90%E6%9D%9F%E5%85%83%E7%B4%A0.gif)
只要是 HTML 所定義的元素,如 h1-h6、center、title 等等,都能使用上述方示,快速產生出相對應的語法如下
![起始元素與結束元素-2](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E8%B5%B7%E5%A7%8B%E5%85%83%E7%B4%A0%E8%88%87%E7%B5%90%E6%9D%9F%E5%85%83%E7%B4%A0-2.gif)
有些元素還會帶入跟該元素有關的屬性,例如:iframe、a 或是 img 等
![有些元素還會帶入跟該元素有關的屬性](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E6%9C%89%E4%BA%9B%E5%85%83%E7%B4%A0%E9%82%84%E6%9C%83%E5%B8%B6%E5%85%A5%E8%B7%9F%E8%A9%B2%E5%85%83%E7%B4%A0%E6%9C%89%E9%97%9C%E7%9A%84%E5%B1%AC%E6%80%A7.gif)
![產生元素時直接加上指定的 .className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E7%94%A2%E7%94%9F%E5%85%83%E7%B4%A0%E6%99%82%E7%9B%B4%E6%8E%A5%E5%8A%A0%E4%B8%8A%E6%8C%87%E5%AE%9A%E7%9A%84className.gif)
如果是要針對單一元素要加上多個 class name 的話,只要把它們用半形的句號隔開,接在一起就可以了。例如今天我們要產生 Class Name 是「news_p c1」的 div 標籤,則輸入「div.news_p.c1」後按 Ctrl+E
![單一元素要加上多個className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%96%AE%E4%B8%80%E5%85%83%E7%B4%A0%E8%A6%81%E5%8A%A0%E4%B8%8A%E5%A4%9A%E5%80%8BclassName.gif)
前端工程師省時神器 Emmet 一般預設的元素是 div,所以如果直接輸入英文句號後,寫 class name 的話,就會自己產生一個 div 元素加上指定的 class name。承上例,輸入「.news_p.c1」後按 Ctrl+E
![直接寫.className就會自動產生div元素加上指定的className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E7%9B%B4%E6%8E%A5%E5%AF%ABclassName.gif)
除了 class name,我們也可以幫元素加上指定的 id。只要先打 # 號再輸入 id name 就可以。例如今天我們要產生 id 為「news_p」的 div 標籤,則輸入「#news_p」後按 Ctrl+E
![幫元素加上指定的id](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%B9%AB%E5%85%83%E7%B4%A0%E5%8A%A0%E4%B8%8A%E6%8C%87%E5%AE%9A%E7%9A%84id.gif)
class name 和 id 可以同時使用,比如說今天我們要產生 class name 為「news_p c1」、id 為「paragraph-1」的 div 標籤,則輸入「.news_p.c1#paragraph-1」後按 Ctrl+E
![className和id可以同時使用](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%B9%AB%E5%85%83%E7%B4%A0%E5%8A%A0%E4%B8%8AclassName%E5%92%8Cid.gif)
![Emmet 支援的網頁瀏覽器.png Emmet 支援的網頁瀏覽器.png](https://imageproxy.pixnet.cc/imgproxy?url=https://pic.pimg.tw/sweetuimother/1563897359-1639066660_n.png)
快速產生標籤名稱 (Tag Name)
前端工程師在寫網頁的第一步,就是在網頁編輯器中開出新的頁面,並產生標準的 HTML5 樣板。透過 Emmet,我們可以先在編輯器中輸入「!」或是「html:5」後,再按下 Ctrl+E 鍵即可。![Emmet中快速產生HTML5樣板](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%BF%AB%E9%80%9F%E7%94%A2%E7%94%9FHTML5%E6%A8%A3%E6%9D%BF.gif)
![起始元素與結束元素](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E8%B5%B7%E5%A7%8B%E5%85%83%E7%B4%A0%E8%88%87%E7%B5%90%E6%9D%9F%E5%85%83%E7%B4%A0.gif)
![起始元素與結束元素-2](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E8%B5%B7%E5%A7%8B%E5%85%83%E7%B4%A0%E8%88%87%E7%B5%90%E6%9D%9F%E5%85%83%E7%B4%A0-2.gif)
![有些元素還會帶入跟該元素有關的屬性](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E6%9C%89%E4%BA%9B%E5%85%83%E7%B4%A0%E9%82%84%E6%9C%83%E5%B8%B6%E5%85%A5%E8%B7%9F%E8%A9%B2%E5%85%83%E7%B4%A0%E6%9C%89%E9%97%9C%E7%9A%84%E5%B1%AC%E6%80%A7.gif)
快速產生 className 與 id
我們也可以在產生元素時,直接加上指定的 Class Name。寫法是元素名稱與 Class Name 名稱中間用英文句點隔開。例如今天我們要產生 Class Name 為「title」的 h1 標籤,則輸入「h1.title」後按 Ctrl+E![產生元素時直接加上指定的 .className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E7%94%A2%E7%94%9F%E5%85%83%E7%B4%A0%E6%99%82%E7%9B%B4%E6%8E%A5%E5%8A%A0%E4%B8%8A%E6%8C%87%E5%AE%9A%E7%9A%84className.gif)
![單一元素要加上多個className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%96%AE%E4%B8%80%E5%85%83%E7%B4%A0%E8%A6%81%E5%8A%A0%E4%B8%8A%E5%A4%9A%E5%80%8BclassName.gif)
![直接寫.className就會自動產生div元素加上指定的className](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E7%9B%B4%E6%8E%A5%E5%AF%ABclassName.gif)
![幫元素加上指定的id](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%B9%AB%E5%85%83%E7%B4%A0%E5%8A%A0%E4%B8%8A%E6%8C%87%E5%AE%9A%E7%9A%84id.gif)
![className和id可以同時使用](https://imageproxy.pixnet.cc/imgproxy?url=https://www.tedu.tw/blog/pictures/Emmet1-%E5%B9%AB%E5%85%83%E7%B4%A0%E5%8A%A0%E4%B8%8AclassName%E5%92%8Cid.gif)
以上介紹過個常用的 Emmet 標籤快捷縮寫方式,更多的元素縮寫方式都可在 Emmet 官方文件中找到:Emmet cheat sheet
推薦閱讀:
前端工程師不藏私大公開(一):怎麼運用Media Query?
前端工程師不藏私大公開(二):關於Media Queries
前端工程師不藏私大公開(三):怎麼運用or.and.only?
神奇的Java課程-竟可讓人從零經驗到成為工程師不用一年!!?
文章標籤
全站熱搜