階層的な展開
子要素として展開する
ul>li>a-
<ul> <li><a href=""></a></li> </ul>
+ 隣接した要素(隣り合わせに配置)
dl>dt+dd-
<dl> <dt></dt> <dd></dd> </dl>
^ 上の階層(続けて配置)
div>p^div-
<div> <p></p> </div> <div></div>
さまざまな展開のテクニック
IDやCLASSをつける
ul#hoge>li.moge-
<ul id="hoge"> <li class="moge"></li> </ul>
IDは要素名に続けて「#」、クラスは要素名に続けて「.」をつけます。
CSSの規則と同じです。
IDやCLASSを複数個つける
p#id1.class1.class2-
<p id="id1" class="class1 class2"></p>
このように連続して複数個つけることもできます。
divの省略
#main^.sub-
<div id="main"></div> <div class="sub"></div>
divを省略して、idとclass名のみを指定して展開することもできます。
連番と繰り返し
ul>li#item$*5-
<ul> <li id="item1"></li> <li id="item2"></li> <li id="item3"></li> <li id="item4"></li> <li id="item5"></li> </ul>
行数が多いと、便利さが際立ちます。
「$」マークで連番を付けることができます。「$」マークの数で桁数を指定することができます。
例えば3ケタの連番を付けたい場合は「$$$」です。
さらに「*」記号で特定の要素を繰り返して展開することができます。
「li*5」ならリスト要素を5個展開します。
降順に番号をつける
ul>li#item$@-*3-
<ul> <li id="item3"></li> <li id="item2"></li> <li id="item1"></li> </ul>
「$@-」で降順で番号を付与することができます。
開始番号を指定して、番号をつける
ul>li#item$@5*3-
<ul> <li id="item5"></li> <li id="item6"></li> <li id="item7"></li> </ul>
「@数字」で開始番号を指定することができます。
「@5」なら5番目から展開します。
まとめて展開する
dl>(dt+dd)*3-
<dl> <dt></dt> <dd></dd> <dt></dt> <dd></dd> <dt></dt> <dd></dd> </dl>
この例では、<dt>と<dd>をまとめて、3つ展開しています。
説明リスト(定義リスト)の展開などで役に立ちます。
属性・値を指定する
a[href=# target=_blank]-
<a href="#" target="_blank"></a>
※[]を使うことで、あらかじめ属性・値を入力して展開することができます。“”は不要です。
文字列を入れる
div>p{テキスト}-
<div> <p>テキスト</p> </div>
{}の中にテキストを入れて展開することができます。
ul>li*3>a{メニュー$}-
<ul> <li><a href="">メニュー1</a></li> <li><a href="">メニュー2</a></li> <li><a href="">メニュー3</a></li> </ul>
これはこれまでの応用です。
テキストに連番を付けて展開することもできます。
ダミー文章を入れる
lorem-
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Inventore id minus dolorem architecto, neque voluptatibus et, culpa iste ad, voluptas perspiciatis magni earum. Ex ipsum eum mollitia,
英語としても意味をなさないダミー文章を展開してくれます。
p>lorem5-
<p>Lorem ipsum dolor sit amet.</p>
loremに数字をつけるとその数に応じた単語が展開されます。
フィルター
ちょっと特殊な展開方法もご紹介します。こんなことも出来るんだ程度でいいと思います。
|e 特殊文字をエンコードで出力
div>p|e-
<div> <p></p> </div>
>や<、&をエスケープ処理して展開することができます。
|c 閉じタグの後にIDやClass名をコメントで出力
#main>p^.sub>p|c-
<div id="main"> <p></p> </div> <!-- /#main --> <div id="sub"> <p></p> </div> <!-- /.sub -->
コードが長くなると便利ですよね。
ID名やClass名を閉じタグの後ろにコメントとして追加してくれます。
|s シングルライン(1行で出力)
ul>li*3|s-
<ul><li></li><li></li><li></li></ul>
{}の中にテキストを入れて展開することができます。
CSS
多少間違ってても、近いやつが展開されます。
あいまいな入力にも対応しているのがうれしいところです。
すべて覚える必要はないので、よく使うものから覚えるといいと思います。
タイプ(文字装飾)
| 展開前 | 展開後 |
|---|---|
| c | color: #000; |
| c#f | color: #fff; |
| fz12 | font-size: 12px; |
| fz12r | font-size: 12rem; |
| fw:n | font-weight:normal; |
| fw:b | font-weight:bold; |
| lh1.5r | line-height: 1.5rem; |
| td | text-decoration: none; |
| -tsh-inset-0-1-3-#bbb | -webkit-tsh-inset: -0px 1px 3px #bbb; -moz-tsh-inset: -0px 1px 3px #bbb; -ms-tsh-inset: -0px 1px 3px #bbb; -o-tsh-inset: -0px 1px 3px #bbb; tsh-inset: -0px 1px 3px #bbb; |
背景
| 展開前 | 展開後 |
|---|---|
| bg+ | background:#fff url() 0 0 no-repeat; |
| bgc#ccc | background-color: #ccc; |
| bgc:t | background-color:transparent; |
| bgr:x | background-repeat:repeat-x; |
| bgr:y | background-repeat:repeat-y; |
ブロック
| 展開前 | 展開後 |
|---|---|
| va | vertical-align:top; |
| va:m | vertical-align:middle; |
| va:b | vertical-align:bottom; |
| tac | text-align: center; |
| ta-l | text-align: left; |
| tar | text-align: right; |
| ti | text-indent: ; |
| d | display:block; |
| d:n | display:none; |
| d:b | display:block; |
| d:i | display:inline; |
| d:ib | display:inline-block; |
| d:tb | display:table; |
| d:itb | display:inline-table; |
| d:tbcl | display:table-column; |
| d:tbr | display:table-row; |
| d:tbc | display:table-cell; |
ボックス
| 展開前 | 展開後 |
|---|---|
| w100 | width: 100px; |
| w100p | width: 100%; |
| w2e | width: 2em; |
| w2r | width: 2rem; |
| w:a | width:auto; |
| h | height:; |
| h:a | height:auto; |
| maw | max-width:; |
| mah | max-height:; |
| miw | min-width:; |
| mih | min-height:; |
| fl | float:left; |
| fl:r | float:right; |
| cl | clear:both; |
| m1-2-3-4 | margin: 1px 2px 3px 4px; |
| m10–10 ※ハイフンに続けて、マイナス10 |
margin: 10px -10px; |
| m0-a | margin: 0 auto; |
| mt | margin-top:; |
| mr | margin-right:; |
| mr:a | margin-right:auto; |
| mb | margin-bottom:; |
| ml | margin-left:; |
| ml:a | margin-left:auto; |
| p | padding:; |
| pt | padding-top:; |
| pr | padding-right:; |
| pb | padding-bottom:; |
| pl | padding-left:; |
ボーダー
| 展開前 | 展開後 |
|---|---|
| bd+ | border:1px solid #000; |
| bt+ | border-top:1px solid #000; |
| bdt+ | border-top:1px solid #000; |
| bdc | border-color:#000; |
| bdc:t | border-color:transparent; |
| bdi | border-image:url(); |
| bds:s | border-style:solid; |
| bds:db | border-style:double; |
| bds:dt | border-style:dotted; |
| bds:ds | border-style:dashed; |
| -bdrs5 ※ベンダープレフィックス付き |
-webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; -o-border-radius: 5px; border-radius: 5px; |
| bdtrrs | border-top-right-radius:; |
| bdtlrs | border-top-left-radius:; |
| bdbrrs | border-bottom-right-radius:; |
| bdblrs | border-bottom-left-radius:; |
| -bsha-0-1-3-#bbb | -webkit-box-shadow: -0px 1px 3px #bbb; box-shadow: -0px 1px 3px #bbb; |
リスト
| 展開前 | 展開後 |
|---|---|
| lis | list-style:; |
| lis:n | list-style:none; |
| list:n | list-style-type:none; |
| list:d | list-style-type:disc; |
| list:c | list-style-type:circle; |
| list:s | list-style-type:square; |
| lisi | list-style-image:; |
| lisp:i | list-style-position:inside; |
| lisp:o | list-style-position:outside; |
位置(ポジション)
| 展開前 | 展開後 |
|---|---|
| pos | position:relative; |
| pos:a | position:absolute; |
| pos:f | position:fixed; |
| t | top:; |
| r | right:; |
| b | bottom:; |
| l | left:; |
| z | z-index:; |
| ov | overflow:hidden; |
| ov:v | overflow:visible; |
| ov:s | overflow:scroll; |
| ov:a | overflow:auto; |
| v | visibility:hidden; |
| v:v | visibility:visible; |
拡張(視覚的効果)
| 展開前 | 展開後 |
|---|---|
| cur | cursor:${pointer}; |
| cur:a | cursor:auto; |
| cur:d | cursor:default; |
| cur:he | cursor:help; |
| cur:p | cursor:pointer; |
| cur:t | cursor:text; |
| op | opacity:; |
| op:ie | filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100); /* ie lt 8(7以前) */ |
| op:ms | -ms-filter:’progid:DXImageTransform.Microsoft.Alpha(Opacity=100)’; /* IE8以降 */ |
HTML
<head>関係
| 展開前 | 展開後 |
|---|---|
| ! ※lang=”en”をlang=”ja”に変更することも可能です。 |
<!DOCTYPE html> <html lang=”en”> <head> <meta charset=”UTF-8″> <title>Document</title> </head> <body></body> </html> |
| link | <link rel=”stylesheet” href=”” /> |
| link:css | <link rel=”stylesheet” href=”style.css” /> |
| script | <script></script> |
| script:src | <script src=””></script> |
| link:favicon | <link rel=”shortcut icon” type=”image/x-icon” href=”favicon.ico” /> |
| link:touch | <link rel=”apple-touch-icon” href=”favicon.png” /> |
| meta:vp | <meta name=”viewport” content=”width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0″ /> |
lang=”en”をlang=”ja”に変更する方法
Sublime Textの場合の設定方法です。
「Preferences」→「Package Settings」→「Emmet」→「Settings – User」を選択します。
下記のコードをコピペして保存する。
{
"snippets": {
"variables": {
"lang": "ja",
"locale": "ja-JP",
"charset": "UTF-8",
"indentation": "\t",
"newline": "\n"
}
}
}
これでhtmlファイルを新規作成して
いつもどおり「!」を展開するとlang=”ja”になる。


































