0

アイデアは単純でした:

  1. ホーミング時のliの背景色を1つの色に変更する

    ul#menu li a:hover {...}
    
  2. マウスを押したときに他の色に変更する

    ul#menu li a:active {...}
    
  3. リンクがホバーまたは押されていない場合は、元の色 (通常) に戻します

問題は、ユーザーが自分の意図を拒否してマウスをリンクから離した場合、背面の色が押されたままになることです (つまりa:active)。

したがって、リンクが「アクティブ」状態になり、ユーザーがマウスボタンを離した後もそのままのように見えます。

編集

これは、この質問に答えようとしたポスターの助けを借りて思いついたものです:これらのフィドルを比較してください:

  1. Fiddle - 必要に応じて動作
  2. Fiddle - 実際のアプリケーションと同じように動作

違いは、目的のフィドルに がないことhrefです。が追加されるとすぐhrefに、リンクは望ましくない動作を開始します。どちらも次を使用します。

a:link {color:#FF0000;}      /* unvisited link */
a:visited {color:#FF0000;}  /* visited link */
a:hover {color:#FF00FF;}  /* mouse over link */
a:active {color:#0000FF;}  /* selected link */

その間

  1. <a>LINK</a>
  2. <a href="default.asp" target="_blank">LINK</a>

確かに私はhref自分のhtmlに設定したので、どうすればFiddle #1の動作を達成できますか?

ということで、htmlとcssだけでは無理そうです。Javaスクリプトを使用した回避策はありますか?

4

2 に答える 2

2

私はそれを試してみましたが、すべてが魅力的です。訪問済みリンクのルールも必要で、デフォルトの未訪問リンクとして設定してください

フィドル

于 2012-10-12T06:35:49.297 に答える
2

あなたの要件から私が理解していることは、私がjsfiddleの功績を認めたことです。

デモを確認してください

http://jsfiddle.net/saorabhkr/Pzuwb/

于 2012-10-12T06:45:39.983 に答える