phpstormでEmmetを使おうかなとか思ったのでメモ。
Emmet Everywhereのpluginをインストール。
基本は1行書いて「tab」を押して実行。
・ulタグにliを3個。
ul>li*3
上記を記述後tabで実行
<ul>
<li></li>
<li></li>
<li></li>
</ul>
・ulタグにclass="item"のliを3個
ul>li.item*3
<ul>
<li class="item"></li>
<li class="item"></li>
<li class="item"></li>
</ul>
・ulタグにid="item"のliを3個
.itemでclassだったのでもちろんidは#item。
ul>li#item*3
<ul>
<li id="item"></li>
<li id="item"></li>
<li id="item"></li>
</ul>
ただし、これだと全て同じidになってしまうので
ul>li.item$*3
「$」を使ってみる。
<ul>
<li class="item1"></li>
<li class="item2"></li>
<li class="item3"></li>
</ul>
これで連番ができた。
「$$
」にすると「01」から連番「$$$
」だと「001」から連番。
・divで囲む
対応しているタグを使わないとdivになる。
.hoge>ul>li.item$*3
<div class="hoge">
<ul>
<li class="item1"></li>
<li class="item2"></li>
<li class="item3"></li>
</ul>
</div>
極端に書くと
.hoge>#fuga>.piyo$*3
<div class="hoge">
<div id="fuga">
<div class="piyo"></div>
<div class="piyo"></div>
<div class="piyo"></div>
</div>
</div>
・aタグ
aタグを使う時は
a
<a href=""></a>
これだけ。
今までの例と少し組み合わせてみると、、、
.hoge>ul>li*2>a
<div class="hoge">
<ul>
<li><a href=""></a></li>
<li><a href=""></a></li>
</ul>
</div>
もうちょっと複雑な事をすると、、、
.hoge>ul>li*2>a{fuga $}
<div class="hoge">
<ul>
<li><a href="">fuga 1</a></li>
<li><a href="">fuga 2</a></li>
</ul>
</div>
{}
の中がリンク名になる。
・組み合わせ
「+」を使うと組み合わせる事ができる。
ul>li*2+.hoge
<ul>
<li></li>
<li></li>
<li class="hoge"></li>
</ul>
実はulの外にdivが欲しかったのに・・・・って場合は
(ul>li*2)+.hoge
<ul>
<li></li>
<li></li>
</ul>
<div class="hoge"></div>
括弧で囲んでしまえば解決!
・HTML
htmlタグはよく使うのがなんでもあると思ってとりあえず片っ端から試してみるといいかも。
「!」はいつも書くのが面倒だったあれが一瞬で書けて感動。
!
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
</body>
</html>
html5ですけどね。
inputタグはtypeを変えるだけで便利。
input:text
input:submit
<input type="text" name="" id="">
<input type="submit" value="">
EmmetはCSSでも使えるし、覚えればかなり便利で作業効率があがると思いますが、そこまでHTMLを書く事がなかったりするんですけどね。。。
最後に応用をきかせてTableを段階的に書いていきます。
とりあえず基本の形
table>tr>td
<table>
<tr>
<td></td>
</tr>
</table>
divで囲んで、tdも2個にしてみよう
.tbl>table>tr>td*2
<div class="tbl">
<table>
<tr>
<td></td>
<td></td>
</tr>
</table>
</div>
tbodyも付けて、tdの中にFUGAって入れてみよう
.tbl>table>tbody>tr>td{FUGA$}*2
<div class="tbl">
<table>
<tbody>
<tr>
<td>FUGA1</td>
<td>FUGA2</td>
</tr>
</tbody>
</table>
</div>
trをもう一つ増やしてみたいから+を付ければ、、、
.tbl>table>tbody>tr>td{FUGA$}*2+tr>td*2
<div class="tbl">
<table>
<tbody>
<tr>
<td>FUGA1</td>
<td>FUGA2</td>
<tr>
<td></td>
<td></td>
</tr>
</tr></tbody>
</table>
</div>
って思ったらなんか崩れてる!
どうやら括弧をしないとダメらしい。
.tbl>table>tbody>(tr>td{FUGA$}*2)+(tr>td*2)
<div class="tbl">
<table>
<tbody>
<tr>
<td>FUGA1</td>
<td>FUGA2</td>
</tr>
<tr>
<td></td>
<td></td>
</tr>
</tbody>
</table>
</div>
いい感じになってきた。
今度はtdを一つにしてtrをさらに増やしてみる。ついでにFUGAにリンクも付けてしまえ、、、
.tbl>table>tbody>(tr>td*2>a{FUGA$})+(tr>td{$$}*2)+(tr>td[colspan="2"]{clo})
<div class="tbl">
<table>
<tbody>
<tr>
<td><a href="">FUGA1</a></td>
<td><a href="">FUGA2</a></td>
</tr>
<tr>
<td>01</td>
<td>02</td>
</tr>
<tr>
<td colspan="2">clo</td>
</tr>
</tbody>
</table>
</div>
ここまでやると簡単なテーブル作ってからコピペの方が楽な気がしてきますね。
チートシートはこちら
http://docs.emmet.io/cheat-sheet/