0

よし、これは私がプロジェクトのために取り組んでいたもののテスト例 (洗練されていない) にすぎません。要素の背景として設定されたナビゲーションに使用されている画像があり、その画像に透明度があり、変更すると画像の表示部分が縮小されるとします。

私は iceweasel 10 を使用しています。これを行うと、スプライトの「縮小」バージョンが前の背景の上に描画されるだけです。これは、以前の背景がまだ小さいスプライトの外側に表示されていることを意味します。

これは、:active の新しいイメージ スプライトと共に背景色を指定することで「修正」できますが、透明度を維持するにはどうすればよいでしょうか。背景が無地の (または既知の) 色でない場合はどうなりますか?

これがhtmlで示された問題です。スプライトに使用する pngを次に示します。

これはブラウザのレンダリング エンジンのアーティファクトですか、それとも CSS の標準ですか? ありがとう。

4

1 に答える 1

1

あなたの問題は、一方の背景が に適用されa、もう一方がコンテナに適用されていることです。;s 背景を設定してaも、コンテナーの背景はクリアされません。交換:

#home{
left:0px;
width:46px;
background:url('img_navsprites_hover2.png') 0 0;
}
#home a:hover{
background: url('img_navsprites_hover2.png') 0 -45px;
}
#home a:active{
background: url('img_navsprites_hover2.png') 0 -90px;
}

#home {
    left: 0px;
    width: 46px;
}
#home a { background: url('img_navsprites_hover2.png') 0 0; }
#home a:hover{ background: url('img_navsprites_hover2.png') 0 -45px; }
#home a:active { background: url('img_navsprites_hover2.png') 0 -90px; }
于 2012-06-07T13:47:06.557 に答える