Twitter Bootstrap を使用して、テーブル内の 1 つの列のコンテンツを右に揃えようとしています。
問題は、その.text-right
クラスが要素に対して機能しないことです<td>
。スタイルの適用text-align:right
は機能しますが、要素に適用されるクラスが一般的な要素スタイルよりも優先度が低い理由が気になります。
Twitter Bootstrap を使用して、テーブル内の 1 つの列のコンテンツを右に揃えようとしています。
問題は、その.text-right
クラスが要素に対して機能しないことです<td>
。スタイルの適用text-align:right
は機能しますが、要素に適用されるクラスが一般的な要素スタイルよりも優先度が低い理由が気になります。
I'm curious why class applied to element has lower priority then general element style.
インライン スタイルは CSS で最も特異性が高いため (!important
キーワードを使用する以外に)
特異性を 4 つの数字 (0、0、0、0) と考えてください。
*
の特異性は 0 で、何でもオーバーライドされます。それを使用して、特定のセレクターをオーバーライドする方法を理解できるはずです
「text-align: left;」を持つ 192 行目の .table td ルールだけです。上書きしています。
これは、特異性階層の問題です。
すべてのセレクターは、特異性階層にその場所があります。特定のセレクターの特異性レベルを定義する 4 つの異なるカテゴリがあります。
インライン スタイル (ドキュメント内のスタイルの存在)。インライン スタイルは、XHTML ドキュメント内に存在します。スタイルを設定する要素に直接アタッチされます。例えば<h1 style="color: #fff;">
ID (ID セレクターの数) ID は、 などのページ要素の識別子です#div
。
クラス、属性、および疑似クラス (クラス セレクターの数)。:hover
このグループには、.classes、[attributes] 、および:focus
などの疑似クラスが含まれます
。
要素と疑似要素 (要素 (タイプ) セレクターの数)。たとえば:before
、 とを含みます:after
。