CSSでclassがついていないタグにだけスタイルを当てる方法

コーディングをしていると、classが1つもついていないタグにだけスタイルを当てたい場合があります。
「classがなにもついていない」状態は「デフォルトの状態」とも言い換えられます。
うまく使いこなすことで、余計なスタイルの打ち消しを最小限に抑えつつ、CSSをスッキリさせられます。
classがついていないタグにスタイルを当てる方法
classがついていないタグにスタイルを当てるためには「○○:not([class])」を使います。
<h2>タグに対して使う場合は下記のようになります。
h2:not([class]) {
/* classが付いていない場合のスタイル */
}[class]はclass属性のことで、:not()は否定を表す疑似クラスです。
その2つを組み合わせることで「class属性が存在しない場合に」というセレクタになります。
使いどころ
例えばブログ記事やお知らせなど、あとからWYSIWYGエディタやブロックエディタを使って追加するコンテンツにはclassがついていない場合が多いです。
普通は「.blog」などの専用のタグを上位に付けておいて、その中のタグを指定する方が一般的だと思います。
.blog h2 {
/* ブログ内のh2にだけ適用されるスタイル */
}しかしこれだと、ブログ外でも同じスタイルを使いたい場合に、同じ内容のスタイルを別途用意したり、セレクタを追加する必要が出てきます。
そこで:not([class])指定をしておけば、デフォルトの状態としてスタイルを追加できるので、同じ見た目を簡単に用意できます。
そしてトップページなど、別のスタイルが必要な場合はclassを付けてスタイルを用意します。
classを付けると:not([class])は適用されなくなるので、余計な打ち消しが必要ありません。


WordPressの自動バックグラウンド更新を無効にする方法とその注意点
WordPressで既に公開済みの記事の更新を、指定した日付に反映する方法「PublishPress Revisions」
iOSシミュレーターを使ってWebサイトを開発者ツールを見ながら実機表示で開発する方法
gulpfile.jsにAutoprefixerのブラウザオプションを書くとエラーがでる場合の修正方法
思考したり情報整理したい時はMarkdown記法で文章を書き出そう!!Webデザイナーの情報整理術
Vue CLIでVue.jsの開発環境をセットアップするまでの流れ
Visual Studio Codeでコメントを色分けして管理する「Better Comments」
Visual Studio Codeでショートカットキーを変更する方法
Movable TypeでMTLoopを使ってkeyでソートしたときに、10個以上表示させると並びがおかしくなる
gulp 4.0から新しく加わったseriesとparallelについての備忘録
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
ウェブ開発時のテスト環境と本番環境の取り違えを防ぐChrome拡張機能「Environment Marker」
【2026年版】Karabiner-Elementsで実現する右commandキー活用のススメ
Bartender ProのTop Shelf機能でできること
高機能なスクリーンショットアプリ「CleanShot X」
macOSの効率化に関するDiscordコミュニティ「CMD-F」を立ち上げました
1Passwordの開発者向け機能(SSH Agent / Environments / 1Password CLI / Developer Watchtower)
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」