「a:before:hover」ではなく「a:hover:before」

CSS擬似

擬似クラス+擬似要素

 状態:-  閲覧数:11,027  投稿日:2013-04-19  更新日:2015-09-16
擬似クラス擬似要素 を同時に使用可能


構文


記載順にはルールがある
・擬似クラスの後に、擬似要素を書く
・擬似要素の後に、擬似クラスを書いても、正常動作しない
要素名:擬似クラス:擬似要素


実際に遭遇した例 … リンク要素の後に内容を追加した後、マウスオーバーしたい

 閲覧数:642 投稿日:2014-04-01 更新日:2015-09-16

3つ重ねる


リンク要素の後に内容を追加した後、マウスオーバーしたい
・実際に遭遇したのは、見出しCSSを試行錯誤したとき
・いいなと思った見出しCSSは、大体「擬似クラスと擬似要素のコンボ技」を決めていた

CSS的には?
・リンク要素 … aタグ
・要素の後に内容追加 … :after
・マウスオーバー … :hover


何が問題なの?


プチパニック
・「要素」が2つ以上続くと、途端にどれを先に書けば良いか分からなくなる。もう分からない。全然分からないー

そんな時は構文を思い出す
・何が「要素名」で、何が「擬似クラス名」で、何が「擬似要素名」なのかを把握

カテゴライズ
・リンク要素 … aタグ … 要素名
・要素の後に内容追加 … :after … 擬似要素
・マウスオーバー … :hover … 擬似クラス

後は順番通り並べるだけ
要素名:擬似クラス:擬似要素
a:hover:before


振り返り


「a:before:hover」ではなく「a:hover:before」
・絶対「a:before:hover」だろうと思い、30分近くも粘るも一向に動作しなかった
・そもそも「擬似クラス」と「擬似要素」に分かれていること自体知らなかった
・「この件、あまり情報がない」とか書いたけど、今考えると結構恥ずかしい
・間違える人なんかいないのかもしれないが…

「td:before:nth-child(2n)」ではなく「td:nth-child(2n):before」

 閲覧数:459 投稿日:2017-02-05 更新日:2017-02-05
td:nth-child(2n):before



「:after擬似要素」は、Chromeの「要素を検証」で確認できない

コメントありがとうございました。

閲覧数:0 投稿日:2014-04-01 更新日:2014-04-01 カテゴリー: CSS  投稿: design  


1さん
コメントありがとうございました。

>擬似要素と擬似クラスを混同してませんか?
・混同していました
・両者が異なるカテゴリーに属すること自体、今、初めて、知りました
・履歴が分かるように追記しようかと思ったのですが、訂正しようがないぐらい内容が相違していたので、全面的に書き直しました

・現時点の閲覧数:1940
・これまで閲覧していただいた1939人の方へ。間違った内容でした。ごめんなさいー


×

ゲストコメント一覧

番号 内容 投稿日
1 擬似要素と擬似クラスを混同してませんか? 2014-03-21
2 悩んでいたことがタイトルで解決!!あざっすw 2015-01-05
3 助かりました。ありがとうございました。 2015-06-17
コメント件数 … 3件

類似度ページランキング
順位 ページタイトル抜粋
1 「a:before:hover」ではなく「a:hover:before」 42
2 「:after擬似要素」は、Chromeの「要素を検証」で確認できない 34
3 「:first-child」が効かない場合は「:first-of-type」 27
4 背景画像がどうしても表示されない → 「clear:both;」を挿入してみる 27
5 「Twitter Bootstrap」2系のアイコンは、画像なので大きく出来ない 26
6 Chromeはアホなコ 26
7 Chromeでmhtml保存を選択できなくなったので、拡張機能「Save Page State」を導入 25
8 「.hoge h4:before:nth-child(5n+1)」ではなく「.hoge h4:nth-child(5n+1):before」 25
9 Chromeでリンク先ページを常に別タブで開くためには、「Ctrlキーを押しながらクリック」 24
10 テーブル枠線がどうしても消えない時は「border-collapse: collapse;」 24
11 Chromeが重くて困っている。解決できない 24
12 「Twitter Bootstrap」のアイコンは、画像なので色を変更できない 24
13 「position:absolute;」が分からなくなったときに見るエントリー 24
14 半透明borderは、16進数カラーコードではなくRBGAを使用 24
15 「Chrome 拡張機能」一覧 24
16 margin相殺 / 水平方向では発生しない。「position:absolute;」「position:fixed;」指定した要素では全く発生しない 23
17 異なる角度の「transform:rotate」を連続実施するためには、@keyframes を利用 23
18 「SRWare Iron」を検討 23
19 「:hover」「z-index」を組み合わせて使用すると、正常動作しないことがある 23
20 Firefoxで画像が表示されない 23
2025/3/10 19:24 更新
週間人気ページランキング / 3-3 → 3-9
順位 ページタイトル抜粋 アクセス数
1 「パッケージ化されてない拡張機能を読み込む」でインストールした拡張は、chromeを「更新」すると正常動作しなくなることがあります。 | Chrome 拡張機能 7
2 金融機関ブランドカラー / コーポレートカラー | カラーコード(色) 6
2 RGB ⇔ Lab | 色変換(色) 6
3 「Font Awesome 4」と「Font Awesome 5」の違い(Font Awesome バージョン4からのアップグレード) | Font Awesome(フォント) 5
3 このエントリーの結論 / 変更するまで /変更後 5
3 鉄道会社毎のカラーコード | カラーコード(色) 5
3 「東京都」のカラーコード取得は難しい | カラーコード(色) 5
4 色モデルイメージ図 | 色変換(色) 3
4 24ビットカラーにおけるHLS要素範囲 / 最小値 ~ 最大値 3
4 Chromeデベロッパーツールで、スマホソースコードを確認したいが、USBデバッグ機能をどうしても有効にすることが出来ない | モバイルデザイン(デザイン) 3
5 G'MIC | GIMP 系(ソフトウェア) 2
5 16進数カラーコード / 2進数 2
5 「bgcolor」「background-color」「background」の違い | CSS 2
5 「line-height」効果を打ち消すスタイルシートは、「line-height:normal; 2
5 「display:flex;」を設定している「
  • タグ」内の「タグ」クリック範囲を拡大する | Flexible Box Layout Module(CSS)
  • 2
    5 血の色 / #b30000 / #360800 / #ff0000 | カラーコード(色) 2
    5 FontAwesomeでアイコンが□(四角)になって表示されない Forbidden  | Font Awesome(フォント) 2
    6 「OOCSS」とは別の考え方? | 命名規則(コーディングルール) 1
    6 効果を打ち消すスタイルシート | CSS 1
    6 2系(Bootstrap) カテゴリー 1
    2025/3/10 1:01 更新