どうしても理解できませんので、どうかお力添えをお願いいたします。
以下のかんたんな“カテゴリー”を、HTMLとCSSで作成しました。
-------------------------------------------------------------------
(HTML)
<div id="navi">
<div id="kategory">
<a href="http://~">テスト1</a>
<a href="http://―">テスト2</a>
</div>
</div>
-------------------------------------------------------------------
(CSS)
#navi{
width:180px;
} (幅180pxのBOXを作成)
#kategory a:link, #kategory a:visited{
display: block;
background-color:red;
border:solid 1px;
} (マウスカーソルがのっていないとき、背景色は赤色)
#kategory a:hover{
background-color:green;
} (マウスカーソルがのっているとき、背景色は緑色)
--------------------------------------------------------------------
「firefox」では問題なかったのですが、「Internet Explorer」ではリンク文字のところにカーソルをもっていかないと、背景色が赤色から緑色に変化しませんでした。
いろいろと調べてみた結果、
「position:absolute;
top: 0px;」
をCSSの「#navi」のなかに書きたすことで、リンク文字以外の箇所にマウスをもってきても背景色が赤色から緑色に変化するようになりました。
どうして「position:absolute;」という属性を使うことにより、リンク文字以外のところへカーソルをもってきても、赤色から緑色へ変化するようになるのでしょうか?
どうか、よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
こんにちは
Internet Explorerのバグです
http://www6.plala.or.jp/go_west/nextcss/tip/tech …
親要素に幅が設定されていないとそれでもできるのですが幅が指定してある場合にはテキスト部分しか判定されないようです
<a>に幅をつけることで解消します
#kategory a:link, #kategory a:visited{
display: block;
width:178px;
background-color:red;
border:solid 1px;
}
※border分2pxがありますのでそれを引いた178pxとなります
position:absoluteすることでおそらくwidth:180pxが100%となるので親要素の幅が指定されていない状態になりできるのではないかと思います(推測ですが(--;)
試しに↓のようにするとposition:absolute;していても同じ状態になります
<style type="text/css">
#navi{
width:180px;
position:absolute;
}
#kategory a:link, #kategory a:visited{
display: block;
background-color:red;
border:solid 1px;
}
#kategory a:hover{
background-color:green;
}
--></style>
<div id="navi">
<div id="kategory">
<div style="width:100px">
<a href="http://~">テスト1</a>
<a href="http://―">テスト2</a>
</div>
</div>
</div>
leap_dayさんへ
なるほど! インターネットエクスプローラーのバグだったのですね。
たいへんわかりやすい説明をありがとうございました。スッキリしました。
リンク先のURLも理解しやすかったです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSSがなぜかfont-sizeだけ効かない...記述がまちがっているんでしょうか 5 2022/04/09 17:52
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS HTML、cssのatomつぅーやつで 課題Ex1ってやつを表示させたいのですが、 私は課題Ex1が 2 2022/12/15 16:56
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- JavaScript vertical sliderをautoplayしたい 2 2022/08/25 14:47
- HTML・CSS img と p を縦中央に配置したいのですがうまくいきません。 2 2023/01/12 14:38
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS cssが効かなくて困ってます 1 2023/01/01 23:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
htmlの文字が縦書きになる
-
余分な縦スクロールバーが出て...
-
floatすると一部、段になってし...
-
css初心者 フレックスボックス...
-
borderをページの下まで伸ばしたい
-
CSSで「overflow:scroll」をしてい
-
Firefoxで表示できるgifファイ...
-
背景画像をセットしたh1にmargi...
-
Media Queries 4 で 非推奨とな...
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
<li>の先頭に出るスペースの埋...
-
table周辺の隙間をなくしたい。
-
表示倍率を変えるとレイアウト...
-
スタイルシートで画面を縦に2...
-
WEBサイト作成:初心者です...
-
メディアクエリ スマホ対応のサ...
-
form input テキストを上下中央...
-
【HTML】【CSS】【Swiper】 元...
-
ロールオーバーで画像がずれな...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
画像イメージの上下左右、欲し...
-
css初心者 フレックスボックス...
-
表示倍率を変えるとレイアウト...
-
CSSがなぜかfont-sizeだけ効か...
-
CSS、width100%でもできる余白
-
W3Cのソースコードの検証サービ...
-
CSS:animation開始位置の設定
-
CSSで指定した背景画像にリンク...
-
余分な縦スクロールバーが出て...
-
<div>と<div>の間の10px程の...
-
【CSS】ヘッダーの高さが不明の...
-
CSSでボックスのheightが0になる
-
スクロールボックスを中央に配...
-
li 黒丸含んで移動する方法
-
border-style:solidで文字がずれる
-
Media Queries 4 で 非推奨とな...
-
【HTML&CSS】フッター下部の余...
-
初心者html・CSS ウィンドウを...
おすすめ情報