Dreamweaver TechniqueJAVA Script サンプル | CSS sample | JAVA Applet sample | Flash Sample
HTML4.0 reference | DynamicHTMLXHTML | XML sample | XSLT sample | RIKO's ASP Trial
ASP ADO リファレンス | PHP関数リファレンス | MySQL関数リファレンス

スタイルの優先順位

■ スタイルの優先順位

スタイルシートでは、外部スタイルシートを読み込む方法、style要素を使用してHTML内にまとめて設定する方法、style属性を使用してタグに直接スタイルを設定する方法、といったものが用意されています。そのため、1つの文書に複数のスタイルが設定され、それらが競合する可能性もあります。こうした場合に対処するために、スタイルには基本的な優先順位がつけられています。

つまり、後からブラウザに読み込まれるスタイルほど優先順位が高くなる(後から読み込まれた設定が咲きに読み込まれた設定を上書きする)というわけです。また、一つの文書内では競合が起こった場合は、より限定的で詳細な指定を行っているスタイルが優先されます。例えば要素に対して指定したスタイルよりは、クラスによるスタイルの方が優先される、といったようになります。

■ 最優先のスタイルを設定する

スタイルシートには、製作者や設定方法によって優先順位がつけられて処理されますが、同時に複数のスタイルシートを適用することで、場合によってはスタイルが競合し、意図したスタイルにならない可能性も生じます。こうした問題を避けるため、優先させたいスタイルに「!important」というキーワードを指定しておく方法があります。


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html lang="ja">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
<meta http-equiv="Content-Style-Type" content="text/css">
<title>最優先のスタイルを設定する</title>
<style type="text/css">
<!--
h1 {
background-color: #ctc;
color: rgb(1,128,0) !important;
text-align: right
}
-->
</style>
</head>
<body>
<h1 style="color:#000">スタイルシートとは</h1>
</body>
</html>

■ スタイルの継承
プロパティには子要素によって値が継承されるものがあります。例えば

このような指定があった場合、特に文字色の指定されていない子要素は、body要素の指定値を継承して青で表示することになります。(ただし、kジェイ証される値が相対地で指定されていた場合は、まず相対値を絶対値として計算してから継承します)

また、各プロパティには「inherit」という値を指定することで、通常は値を継承しない要素でも、強制的に親要素の値を継承させることができます。

■ ボックスの概念
スタイルシートでは、すべての要素はボックスと呼ばれる四角い領域を持つと考え、この領域や領域を囲む枠線に対して大きさや色・位置の指定をすることでスタイルを変更します。ボックスは、内容領域・マージン・パディング・枠線の4つの部分から構成されています。
<<<戻る

R HOUSE | RIKO's Trial Page | Shirley's Pettit Case | Shirley's i-box | Shirley's little box | CSS Trial