WordPressで特定のページだけCSSが効かない原因7選

WordPressで特定のページだけCSSが効かない原因7選

記事
IT・テクノロジー
こんにちは、Dr.WordPressです。

WordPressでCSSを調整していると、

「トップページでは効いているのに、固定ページでは効かない」

「同じデザインなのに、このページだけCSSが反映されない」

ということがあります。

同じCSSを使っているはずなのにページによって表示が違うと、CSSそのものに問題があるように感じます。

しかし実際には、ページごとのHTML構造やテンプレート、ページビルダーなどの違いが原因になっているケースもあります。

今回は、WordPressで特定のページだけCSSが効かないときに確認したい7つの原因をご紹介します。

① HTML構造が違っている


まず確認したいのがHTMLの構造です。

見た目では同じようなボタンや見出しでも、ページによって使用されているclassやHTMLが違う場合があります。

例えば、

・トップページは専用のパーツ

・固定ページはWordPressのブロック

・投稿ページはテーマのテンプレート

といった違いがあるケースです。

この場合、トップページで効いているCSSをそのまま使っても、別のページでは対象となる要素が存在しないため反映されません。

まずは、CSSが効くページと効かないページで同じ要素が使われているか確認してみましょう。

② ページ固有のCSSが設定されている


特定のページだけ別のCSSが適用されている場合もあります。

例えば、

「他のページでは文字が黒なのに、このページだけ白になる」

といった場合です。

ページ専用のCSSによって、共通CSSが上書きされている可能性があります。

CSSを追加して対処する前に、現在どのCSSが適用されているのかを確認することが大切です。

③ bodyに付いているclassが違う


WordPressでは、ページの種類などによってbodyタグに異なるclassが付けられることがあります。

このclassを利用して、

「トップページだけこのCSSを適用する」

「特定の固定ページだけデザインを変更する」

といった指定が行われていることがあります。

そのため、CSS自体は間違っていなくても、特定ページだけ対象外になっているケースがあります。

開発者ツールでbodyタグのclassを比較してみると、違いを見つけやすくなります。

④ ページビルダーのCSSが優先されている


Elementorなどのページビルダーを使用している場合、ページビルダー側で独自のCSSが出力されることがあります。

例えば、

・文字サイズ

・余白

・背景色

・ボタンのデザイン

などがページビルダー側で指定されているケースです。

特定のページだけページビルダーを使っている場合、そのページだけCSSの優先順位が変わることがあります。

「普通の固定ページでは効くのに、ページビルダーで作ったページでは効かない」

という場合は確認してみましょう。

⑤ 使用しているテンプレートが違う


WordPressでは、ページによって異なるテンプレートが使われている場合があります。

例えば、

・トップページ専用テンプレート

・通常の固定ページ

・LP用テンプレート

・投稿ページ

などです。

テンプレートによってHTML構造や読み込まれるCSSが違えば、同じCSSでも結果が変わることがあります。

特定ページだけCSSが効かない場合は、他のページと同じテンプレートを使用しているか確認してみましょう。

⑥ 特定ページのキャッシュが残っている


CSSは正常に変更できているのに、特定のページだけ古いキャッシュが表示されている場合もあります。

例えば、

・キャッシュプラグイン

・サーバーキャッシュ

・CDN

などを使用している場合です。

「他のページは変更されたのに、このページだけ古いデザインのまま」

という場合は、キャッシュも確認したいポイントです。

別のブラウザやシークレットモードで表示を確認すると、原因を切り分けやすくなります。

⑦ CSSの読み込み条件が設定されている


テーマやプラグインでは、ページによってCSSを読み分けている場合があります。

例えば、

「トップページだけ専用CSSを読み込む」

「特定のテンプレートだけ別のCSSを使用する」

といった設定です。

この場合、CSSの内容が正しくても、そもそも効かないページではCSSファイル自体が読み込まれていない可能性があります。

何を書いても特定ページだけ反映されない場合は、対象のCSSがそのページで読み込まれているか確認してみましょう。

他のページとの違いを探そう

このトラブルで大切なのは、

「CSS自体がおかしい」と決めつけないことです。

トップページでは正常に効いているのであれば、そのCSS自体は動作している可能性があります。

そこで、

「効くページと効かないページで何が違うのか」

を比較してみましょう。

特に、

・HTML構造

・class

・適用されているCSS

・ページビルダー

・テンプレート

などを比較すると原因を見つけやすくなります。

特定ページだけCSSが効かないときの確認順序


STEP 1

CSSが効いているページと同じ要素か確認する

STEP 2

HTML構造やclassを比較する

STEP 3

開発者ツールでCSSが適用されているか確認する

STEP 4

別のCSSに上書きされていないか確認する

STEP 5

ページビルダーの設定を確認する

STEP 6

使用しているテンプレートを確認する

STEP 7

CSSの読み込み条件を確認する

いきなりCSSを書き直すよりも、正常なページと問題があるページを比較することで原因を効率よく探せます。

まとめ


WordPressで特定のページだけCSSが効かない場合は、

① HTML構造

② ページ固有のCSS

③ bodyのclass

④ ページビルダー

⑤ テンプレート

⑥ キャッシュ

⑦ CSSの読み込み条件

などを確認してみましょう。

特に他のページでは正常にCSSが効いている場合は、CSSそのものではなく、ページごとの構造や設定に違いがないか確認するのがポイントです。

CSSを確認しても直らない場合はご相談ください

ここまで確認してもCSSが反映されない場合、テーマやプラグイン、CSSの優先順位など、複数の原因が重なっている可能性があります。

「どこを直せばいいのか分からない」という場合は、実際の状況を確認しながら原因を切り分けます。

1件1,000円で、原因の特定から対処方法までご案内しています。

「この症状でも相談できますか?」と、購入前にメッセージいただくだけでも大丈夫です。


サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す