0

内部にリンクを含むリストアイテムがあります。リストアイテムのスタイルをリンク自体にし、cssプロパティを:active有効にしてクリックされたように見せました。ただし、ユーザーが実際にどこに行き着くのか混乱しないように、その中のリンクをクリックしたときにそれが起こらないようにしたいと思います。

何かを変更する前に:

.store-list-item:active {
    -webkit-box-shadow: inset 2px 2px 2px 2px rgba(0, 0, 0, 0.6);
    box-shadow: inset 2px 2px 2px 2px rgba(0, 0, 0, 0.6);
}

警備員と一緒に試した後:

.store-list-item:active when not (.store-list-item .make-default:active) {
    -webkit-box-shadow: inset 2px 2px 2px 2px rgba(0, 0, 0, 0.6);
    box-shadow: inset 2px 2px 2px 2px rgba(0, 0, 0, 0.6);
}

これは可能ですか?そうでない場合、回避策はありますか?

編集:私は正確に起こっていることのjsfiddleを追加しました。 http://jsfiddle.net/cV8ep/1/

4

1 に答える 1

2

回避策

現在 にあるスタイリングを、その内liにある新しいラッパー([デフォルトにする] ボタン以外のすべてを含むラッパー) に適用する場合は、にを適用し、ボタンに を適用して、ラッパーをほぼ同じ場所に配置すると、状態を取得するラッパーにあるボタンとの関連付けが解除されます(これは、 ではなく、新しいラッパー になります)。これにより、ボタンのクリックによる効果のアクティブ化が防止されます。divliposition: relativeliposition: absolute:activedivli

このフィドルを参照してください(説明のためにクラスをオーバーライドしただけのように、いくつかの「ハック」ポイントが.pull-rightあります。コードの実際の構築についてもう少しエレガントになりたいと思うでしょう)。

于 2013-01-11T02:07:56.343 に答える