2011-07-19 6 views
0

私のサイトにCkeditorを使って記事を挿入しています。記事は通常、Word文書から来ており、脚注があります。 最後のCkeditorビルド(7125)で、記事から右脚注にアンカーでリンクできました。それは自動的にそれをやっている。 これは最初の脚注へのリンクです(脚注はソースを指し示しています)。CSSターゲットを使用して親部門を表示する

<a href="#_ftn1" name="_ftnref1" title="">[1]</a> 

<!-- This is the footnote --> 
<div id="ftn1"> 
    <a href="#_ftnref1" name="_ftn1" title="">[1]</a> 
First footnote. I want this to be highlight... 
</div> 

ご覧のとおり、各脚注はdiv内にあります。私は<a>強調することに成功し、次のCSSで :

a:target { background:yellow; } 

私の質問は:私は<a>が彼の子である全体<div>ことを強調することができますどのように? (例では 'ftn1')

ありがとう!

+0

純粋なCSSでは不可能です。 http://stackoverflow.com/questions/1014861/is-there-a-css-parent-selector –

+0

あなたが探しているものは、CSSの一部ではない親セレクタです。 http://snook.ca/archives/html_and_css/css-parent-selectors – Sotiris

答えて

2

残念ながら、ブラウザのパフォーマンスにとって大きな問題であるという理由から、CSSにはセレクタの親タイプまたは祖先タイプはありません。ただし、JQueryを使用して簡単に必要なものを実現できます。

$("a:target").parent().css("background", "yellow"); 
+0

あなたは ':parent'ではなく' .parent() 'を使いたいと思っています。 – BoltClock

+0

ありがとう、それを修正しました。 – Gaurav

+0

ありがとうございます。しかし、私はそれをどのように使うべきかわかりません。私は ''のコードを '$(document).ready(function(){ $(" a "))に追加しようとしました。(function(){ $(" a:target ") .parent()CSS( "背景"、 "黄");。\t \t \t \t}); \t \t \t}); ' しかし、それは問題の多くを持っている...私はとてもよくわかりませんJQuery。 初めてリンクをクリックすると色が変わることはありません。 2回目のクリック時のみ。 そして、あなたが別のリンクをクリックすると、前の黄色の状態になります。 – HaReL

2

あなたがしたいことはできません。

CSSのコードが要素の子をチェックしなければならないと、その後にDOMでバックアップしなければならないので、実際には遅くなります。

したがって、CSSには祖先セレクタはありません。

おそらく、あなたは親をコントロールしており、クラスに脚注などのクラスを追加できます。

または、JavaScriptを使用して必要な処理を行うことができます。

関連する問題