この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:3
ページ更新者:guest
更新日時:2026-06-11 07:07:02

タイトル: style属性
SEOタイトル: HTML style属性 完全ガイド(インラインCSS / 優先順位 / 使い分け / CSP との関係)

この記事の要点
  • style 属性は HTML 要素に直接 CSS を書く方法

    のように使う

  • CSS 適用の 3 方式(インライン /
その HTML 内★★
外部 CSS ファイルリンクされたページ全体

3 方式の比較例

1. インライン(style 属性)

赤い段落

2.

赤い段落

3. 外部 CSS ファイル



  



p { color: red; }

カスケード(優先順位)

同じ要素に複数の CSS が当たったとき、どれが優先されるかの順序をカスケードと呼びます。一般的な優先順位は次の通りです。

  1. !important 付き宣言(最強)
  2. インライン(style 属性)
  3. ID セレクタ(#id
  4. クラス・属性・擬似クラス(.class / [attr] / :hover
  5. 要素・擬似要素(p / ::before
  6. 後に書かれた宣言が勝つ

style 属性は ID セレクタより強いため、外部 CSS で上書きするには !important が必要になることが多く、保守性を著しく落とします。

JavaScript からの style 操作

JS から要素の style プロパティを操作すると、style 属性が動的に書き換わります。プロパティ名はキャメルケースになる点に注意(font-sizefontSize)。

const el = document.querySelector('#box');
el.style.color = 'red';
el.style.backgroundColor = 'yellow';
el.style.fontSize = '24px';

// 一括設定
el.style.cssText = 'color:red; background:yellow; font-size:24px';

// 削除
el.style.color = '';

style 属性のデメリット

問題内容
再利用不可同じスタイルを別要素で使いたいときコピペになる
保守性が低い色を変えるのに全 HTML を grep する羽目に
キャッシュが効かないHTML の一部なので CSS ファイルのようなブラウザキャッシュが使えない
HTML が肥大化本文と装飾が混ざり可読性低下
CSP で禁止される可能性セキュリティポリシー的に厳しい
メディアクエリが書けないレスポンシブ対応が困難

使いどころ

style 属性を使う妥当な場面もあります。

  • JavaScript による動的スタイル変更(要素の表示/非表示、アニメーション)
  • HTML メール(多くのメールクライアントは外部 CSS や