Webサイトを作成中ですが、cssの書き方で悩んでいます。
コードですが、
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title></title>
<style>
.test ul li {
float: left;
display: block;
padding: 20px;
margin: 0px 22px 20px 0px;
border : solid 1px #ccc;
box-shadow: 3px 3px 5px #ccc;
}
.test ul li:active {
margin: 2px 20px 18px 2px ;
box-shadow:0px 0px 2px #fff;
}
</style>
</head>
<body>
<diV class="test">
<ul>
<li>味噌汁</li>
<li><a href="#">ご飯</a></li>
<li><a href="#">焼き魚</a></li>
</ul>
</diV>
</body>
</html>
長々と書きましたが、疑似クラス :activeが効きません。
ただ、IEだけです。Edge、Chrome、FireFoxでは、問題なく効きます。
また、色々試しましたが、IEでも、<li>要素の時だけで、<li>のない文字や画像では問題ないようです。
それに、上記のコードでは、<a>要素のみ効かないだけで、<a>要素の文字以外では効きます。
<a>要素が邪魔しているような感覚です。
もちろん、IE以外のブラウザでは、<a>要素も問題ありません。
コードの書き方に問題あるのでしょうか?
教えていだければ幸いです。
よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
.test ul li { list-style:none;
float: left;
}
.test ul li.cell ,
.test ul li a {
display: block;
padding: 20px;
margin: 0px 22px 20px 0px;
border : solid 1px #ccc;
box-shadow: 3px 3px 5px #ccc;
}
* html .test ul li a { float:left;}
.test ul li.cell:active ,
.test ul li a:active {
margin: 2px 20px 18px 2px;
box-shadow:none;
}
<div class="test">
<ul>
<li class="cell">味噌汁</li>
<li><a href="#">ご飯</a></li>
<li><a href="#">焼き魚</a></li>
</ul>
<p style="clear:both;">IEと言っても各種バージョンがありますが、<br>
多分、liをクリックせず、aだけをクリックしただけと判斷しちゃうからでしょう・・・<br>
普通は、ボックス内のテキストアンカーをクリックし易いようにdisplay: block;にするから、このようなケースには気付かないんだけどね。</p>
</div>
おかげさまで解決し、思い通りのページを作成することができました。
誠にありがとうございました。本当に助かりました。
また、cssの貴重な勉強ができました。
まだまだ、勉強不足で、未解決の不具合がありますので、機会がありましたら、また、ご教授願います。
よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- JavaScript ソースコードのいじる場所が分かりません。 1 2022/12/23 02:06
- HTML・CSS 書籍を見つつサイト造りの練習をしているのですが、見た目が一致しません 2 2022/11/28 15:00
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
- HTML・CSS htmltとcssの連携をして画像縮小について 1 2022/11/15 20:32
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【CSS】メニュー上部に固定させ...
-
疑似クラス :activeが効きません
-
html/cssの、navを2段にする...
-
<li><h2>カテゴリ名<h2></li>で...
-
ホームページビルダーで同じ行...
-
cssでタグ検索のデザインをして...
-
html <ul></ul>の並びで一行空...
-
スタイルシートが全く理解でき...
-
<ul>と<li>リストマークを消す...
-
隣接セレクタの適用範囲について。
-
リストの数字のフォントサイズ...
-
CSS3グラデーションで、右端だ...
-
正規表記について「除く」の表...
-
<li>リストで横メニューを作るわけ
-
画像はDIVタグとPタグの両方で...
-
htmlで行頭を下げる方法
-
IEで<td>の全角を有効にする方法
-
カルーセルスライダー「slick.j...
-
( html) 位置指定方法を教えて...
-
文法チェックの<A>と</A>の間が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
liタグの中に<p>タグやら<dl>を...
-
<table>の高さ固定。情報増加時...
-
レスポンシブWebデザインでリン...
-
html/cssの、navを2段にする...
-
リストの数字のフォントサイズ...
-
divタグ内のコンテンツが重なっ...
-
<ul><li></li></ul>にするメリ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
リンク文字同士の間隔を開ける...
-
<ul>~</ul>が二つ続くと間に改...
-
ulとliで囲った文字の一部を変...
-
番号付きリスト(<Ol><Li>・・...
-
display:table;を多段表示させたい
-
CSS質問:大手サイトを見ると何...
-
ボタンを横に並べて表示させる方法
-
html <li>の中の文字一部に色を...
-
html <ul></ul>の並びで一行空...
-
Tableの1セル内に画像・テキス...
おすすめ情報
早速、ご回答頂き、誠にありがとうございました。
ご指示通り書き直しますと、きれいに動作しました。
助かりました。ありがとうございます。
申し上げにくいのですが、
実は、作成中のHTMLは少しだけ複雑になっています。
aタグ内に画像を添付する予定です。
たとえば、
<li><a href="#"><img src="" width="50">ご飯</a></li>
aタグ内にあるので、結果は同じだと思って、書きませんでした。
文字や枠内をクリックすると、「:active」は有効になりましたが、img画像をクリックしてもリンク先には飛びますが、activeが働きません。
自分なりに色々やってみましたが、何ともなりません。
やはり、IEだけの現象のようです。ちなみに、現在は、IEの11を使用しています。
説明足らずで誠に申し訳ありません。
もし、よろしければ、教えて頂けないでしょうか。
前回の補足の
「img画像をクリックしても、activeが働きません。」
という不具合ですが、再度、ネット検索してみると、対策が見つかりました。
.test ul li a img{
pointer-events: none;
}
を付け加えると期待通りの動きをしてくれました。
詳しくはわかりませんが・・
お騒がせしまして、申し訳ありませんでした。
これで、この件につきましたは、全て解決しました。
ありがとうございました。