またはに定数(したがって、自動で再利用できない)値を割り当てずに、背景画像をテキストと垂直方向に揃えるのに問題がありheight
ますline-height
。たとえば、a
要素, with its text without assigning constant values to
line-height or
height`の bg 画像を垂直方向に中央揃えする方法が実際にあるのではないかと思っていました。
ライブ デモはhttp://cssdesk.com/8Jsx2で利用できます。
HTMLは次のとおりです。
<a class="">background-position: center</a>
<a class="contain">background-size: contain</a>
<a class="line-height">Constant line-height</a>
CSS は次のとおりです。
a {
display: block;
margin: 10px;
width: 200px;
padding-left: 34px;
font-size: 14px;
background: url('http://cdn1.iconfinder.com/data/icons/freeapplication/png/24x24/Thumbs%20up.png');
background-repeat: no-repeat;
background-position: 5px center;
border: 1px solid black;
}
/* I don't want to use constant line-height */
.line-height {
line-height: 24px;
}
/* I don't want to use this, because I want my bg image's size to stay intact */
.contain {
background-size: contain;
}