• ベストアンサー

CSSでのリンク色の変更で

HPのリンク色(a:link)の色をa:link{color:#ffffff;}(色は例です)で変えたんですが、 何故か色が反映されず、デフォルトの青色で表示されてしまいます。 ・hover、active、visitedも同じように変更しているが、そっちは反映されている ・リンクの色を変えようとするページにcss(仮にAとB)ファイルを2つ使っている ・Aではリンクに関する設定は記述してない。またAを省いても変わらない ・Bのリンク以外の指定を消しても同じ ・そもそも青色で設定している文字がない ・HTML文にも色変えの記述はない ・ブラウザ指定もしていない 何度自分で見直しても全く分からないのでお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.2

≫・そもそも青色で設定している文字がない ≫・HTML文にも色変えの記述はない  これは、スタイルシートの優先順位でブラウザがもつスタイルシートが適用されるためです。 ≫・hover、active、visitedも同じように変更しているが、そっちは反映されている  ・hover、activeと、visitedは区別する必要があります。  :linkと:visitedはリンク擬似クラス ( http://www.y-adagio.com/public/standards/tr_css2/selector.html#link-pseudo-classes )で、:hover、:activeは動的擬似クラス ( http://www.y-adagio.com/public/standards/tr_css2/selector.html#dynamic-pseudo-classes )です。  :visitedが有効で、:linkは、リンク指定がして( href属性を持つ要素)あれば、同等に有効なはずです。:hover、:activeはともかく、:visitedが適用され:linkが適用されないということはありません。また、あくまで『HTML 4.0では, リンク擬似クラスは "href" 属性を有するA要素に適用される。』ですから、DOCUMENT TYPEが指定してある限り、href属性が指定されていないa要素には、【IEのみならず他のブラウザにも】適用されません。 以上のことから、  「:linkは反映しないが、:visitedは反映されている」  「aタグにhref属性を指定しないとIEでは効果が反映されません。」  は誤った情報だと思います。  私のIEでは、まったく問題ありません。しかし、詳細度が :linkの場合は、10 a:linkの場合は、20  ですが、他の場所で、#[一意属性]{color:blue;}(詳細度100)とか、body ol li{}(詳細度30)のような記述がある場合、または、ユーザースタイル(インターネットオプション→ユーザー補助)で指定している場合は、適用されないでしょう。  もう一度、詳しく調べて御覧なさい。

colores
質問者

お礼

やはり最初に作ったcssで何度書き直して試してみても、回答されている事を確認しても、linkは反映されないのにvisitedが反映されてしまうという状態でした 諦めて後日新たなcssファイルを作って(記述文は変わりません)そちらをリンクさせたところ何故かうまく作動したのでそっちを使っています。 全く、何が悪かったのか…… 兎も角問題のほうは解決したし、勉強になったのでお二方ともありがとうございました

その他の回答 (1)

noname#83877
noname#83877
回答No.1

aタグにhref属性を指定しないとIEでは効果が反映されません。

関連するQ&A