ボタンが状態のときに、要素のテキスト<button>
をわずかに下/右に移動させたい:active
。padding
ボタンの内部を変更して、合計が同じになるようにすることで、それができると思いました。
私のHTML:
<button>Hello</button><button>Goodbye</button>
これが私のCSSです:
button {
border: 1px solid #9f9b9a;
border-radius: 5px;
background: url("button.png") repeat-x;
font-size: inherit;
padding: 0.1em 0.5em 0.1em 0.5em;
cursor: default;
}
button:hover {
border-color: black;
background-position: left -5px;
}
button:active {
padding: 0.2em 0.4em 0 0.6em;
}
最後に、これが私の jsFiddle です。
内部パディングの合計を0.2em
垂直方向と水平方向に維持することで、ボタンの状態がページのレイアウトにまったく影響を与えると思っていましたが、1em
ボタンをマウスダウンすると移動します。Hello
Goodbye
私が望む効果を得るためのより良い方法はありますか?
写真: