nobita さん、はじめまして。
ご回答ありがとうございました。
『詳細度』、はじめて伺いました。
で、早速調べたところ
『CSSにおけるセレクタの優先順位』
http://refluxflow.net/2006/08/css_selector_specificity.html
がありまして、引用させていただきますと、
----------------------------------
優先順位の計算方法
CSS2の仕様では、セレクタの優先順位の計算方法が以下のように決められています(参考: 6.4.3 Calculating a selector’s specificity)。
http://www.w3.org/TR/CSS2/cascade.html#specificity
セレクタの優先順位は詳細度によって決められます。詳細度の大きいセレクタほど優先順位は高くなります。
セレクタ中のID属性の数をaとする
セレクタ中のID属性以外の属性と疑似クラスの数をbとする
セレクタ中の要素名の数をcする
疑似要素は無視する
この3つの数字をa, b, cの順に連結して詳細度とします。
/* 詳細度の計算例 */
* {} /* a = 0, b = 0, c = 0, 詳細度 = 0 */
p {} /* a = 0, b = 0, c = 1, 詳細度 = 1 */
p a {} /* a = 0, b = 0, c = 2, 詳細度 = 2 */
.class {} /* a = 0, b = 1, c = 0, 詳細度 = 10 */
p.class {} /* a = 0, b = 1, c = 1, 詳細度 = 11 */
p a[href] {} /* a = 0, b = 1, c = 2, 詳細度 = 12 */
a[href]:link {} /* a = 0, b = 2, c = 1, 詳細度 = 21 */
#id {} /* a = 1, b = 0, c = 0, 詳細度 = 100 */
#id p {} /* a = 1, b = 0, c = 1, 詳細度 = 101 */
例えば、「p a[href]」と「a[href]:link」の両方の条件を満たすa要素の場合、後者のスタイルが優先されます。
------------------------------------
これから、前回質問内容の詳細度を計算しますと、
1)の場合
td: #content tr td{} → a=1, b=0, c=2 → 詳細度=102
th: #content tr th,
#content thead th {} → a=2, b=0, c=4 →詳細度=204
2)の場合
td: td{・・・ !important} → c=1 !important=1000 → 詳細度=1001
th: th{・・・ !important} → c=1 !important=1000 → 詳細度=1001
となり、td, th いずれも2)の詳細度が大きいため、2)のスタイルが
反映されるはず、となりましたが、実際には
td: 1)(twentyten の style.css)
th: 2)(投稿記事内のcss)
が反映されてしまいます。
『詳細度』について、まだまだ、勉強不足ですみませんが、
① どこがおかしいのか、
② また、2)を反映させるには、どうすれば良いのか
ご教示いただければ幸いです。