2016-07-04 6 views
2

私はそれらの上にマウスを置いたときに私のリンクを赤に設定するためにCSSを使用しています。それらをクリックすると新しいタブが開きますが、私のリンクはホールドされたままです(赤色)。ボタンをクリックするとアンホーバーすることはできますか?これは本当に悪いように見えます。私達はちょうどそれをクリックしたとどこにもクリックされていない後CSS/JavaScriptを使用してリンクを解除するにはどうすればよいですか?

CSS: 
a:hover { 
color: red; 
} 

HTML: 
<a href="www.example.com" target="_blank">Open site in new tab, remains red</a> 
+0

私はその状態がホバーない焦点を当てていると信じています。フォーカスされた状態に異なるスタイルを追加する可能性があります。 –

+0

私は 'a:focus {some css}'を使わなければならないと思います! – MHS

答えて

0

リンクの状態、すなわちaタグがfocusです。だから、ほとんどの場合、アンカータグの状態を:focusのスタイルに変更する必要があります。

CSS: 
a:hover { 
color: red; 
} 
a, 
a:focus 
{ 
    color: green; /* or whichever is your default color */ 
} 

/* You can also add same or different style for a:visited state, which applies to anchor tags which have been visited */ 

HTML: 
<a href="www.example.com" target="_blank">Open site in new tab, remains red</a> 
+0

さらに、必要に応じて 'a:visited'-stateをスタイルすることができます。 @ maxiloはい、右。 – mxlse

+0

ありがとう。 –

+0

@MohitBhardwaj私は焦点を合わせて訪問しましたが、モバイルではうまく動作していないようです。 iOSのサファリで、モバイル版(リンクされたウェブサイトを開くとリンクされたアプリを開く)のサイトにリンクを開いてSafariに戻っても、リンクはまだ赤いままです。クリックした後にフォーカスを外す方法はありますか? – iamarnold

0

一つの方法は、あなたが(この例では、jQueryのを使用しています)

その推移しまたはクリックされていないとき、元の背景色を持っているボタン..

にクラスを追加することができますクリックであります

$('.button').click(function() { 
 
\t $(this).addClass('button-onclick'); 
 
})
body { 
 
    display: flex; 
 
    justify-content: center; 
 
    align-items: center; 
 
    height: 100vh; 
 
    margin: 0; 
 
} 
 
.button { 
 
    display: flex; 
 
    justify-content: center; 
 
    align-items: center; 
 
    width: 200px; 
 
    height: 200px; 
 
    background-color: red; 
 
    border-radius: 100%; 
 
} 
 
.button:hover { 
 
    background-color: green; 
 
} 
 
.button-onclick:hover { 
 
    background-color: red; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="button">clickers</div>

フィドル

https://jsfiddle.net/Hastig/hL4dt60k/

関連する問題