こんな具合にメニュー項目の左側にアイコンをつけたい。なんて場合が多々ありますが、あとあとのメンテナンスのしやすさや、工数を削減するために、既存サイトのコンテンツを活用しながらデザインリニューアルするために、HTMLに image タグで配置するのではなく、スタイルシートに before 擬似要素として設定することが多いのです。

多いのですが、ちょうどよい位置決めの方法をいつも忘れます(笑)

覚えようという意志がないのだと思うので、メモしておくことにしました。

li a{
	position:relative;
	line-height:1em;
	text-indent:1em;
}
li a:before{
	position:absolute;
	left:0;
	content:"";
	display:inline-block;
	width:1em;
	height:1em;
	background:url(icon.png) no-repeat;
	background-size:contain;
}

「line-height」「text-indent」の値を変えることで微調整してます。