回答編集履歴

2

文面の修正

2017/08/01 10:06

投稿

think49
think49

スコア18166

test CHANGED
@@ -1,12 +1,32 @@
1
- ### 子結合子と子孫結合子
2
-
3
-
4
-
5
1
  > divの中のpの中のaの中のimgにCSSを適応させたいのですが、imgのクラスだけを指定してもcssが効きません。
6
2
 
7
3
 
8
4
 
9
5
  「中」が「孫要素」なのか「子要素」なのかによって記述が変わりますが、子孫要素と仮定するなら「子孫結合子」、子要素と仮定するなら「子結合子」で表現できます。
6
+
7
+ 後述の通り、他に詳細性の高いセレクタが存在しなければ、期待通りに動作するはずです。
8
+
9
+
10
+
11
+ ### 子結合子 (Child combinator)
12
+
13
+
14
+
15
+ ```CSS
16
+
17
+ /* 子結合子 */
18
+
19
+ div>p>a>img {}
20
+
21
+ ```
22
+
23
+
24
+
25
+ ### 子孫結合子 (Descendant combinator)
26
+
27
+
28
+
29
+ `>>` は Selectors 4 で拡張された記法ですが、2017/08/01現在では実装されているブラウザがほとんどない為、まだ使用すべきではありません。
10
30
 
11
31
 
12
32
 
@@ -22,23 +42,7 @@
22
42
 
23
43
  div>>p>>a>>img {} /* この文法は実装されているブラウザがほとんどない為、まだ使用すべきではありません */
24
44
 
25
-
26
-
27
- /* 子結合子 */
28
-
29
- div>p>a>img {}
30
-
31
45
  ```
32
-
33
-
34
-
35
- 後述の通り、他に詳細性の高いセレクタが存在しなければ、期待通りに動作するはずです。
36
-
37
- セレクタの上書き状況は、開発者ツールを使えば分かります。
38
-
39
-
40
-
41
- - [ページとスタイルの調査と編集  |  Web  |  Google Developers](https://developers.google.com/web/tools/chrome-devtools/inspect-styles/?hl=ja)
42
46
 
43
47
 
44
48
 
@@ -54,7 +58,7 @@
54
58
 
55
59
 
56
60
 
57
- - [セレクタの詳細性を計算する - CSS2リファレンス](http://hp.vector.co.jp/authors/VA022006/css/cascade.html#calculating-specificity)
61
+ - [セレクタの詳細性を計算する - 正しい知識を得たい人の爲のCSS2リファレンス](http://hp.vector.co.jp/authors/VA022006/css/cascade.html#calculating-specificity)
58
62
 
59
63
  - [15. Calculating a selector's specificity - Selectors Level 4](https://www.w3.org/TR/selectors4/#specificity)
60
64
 
@@ -96,6 +100,10 @@
96
100
 
97
101
  「a=1 b=0 c=0」の詳細性を「100」と表現している解説サイトがありますが、厳密にはこれは間違いで誤解の元です。
98
102
 
103
+ (説明が分かりやすいので紹介しましたが、前述の [正しい知識を得たい人の爲のCSS2リファレンス](http://hp.vector.co.jp/authors/VA022006/css/index.html) が「100」と表現しています)
104
+
105
+
106
+
99
107
  「100」のような一つの十進数値で表現してしまうと、「a=0 b=10 c=0」が「100」に繰り上げされそうに思えますが、実際には繰り上げされません。
100
108
 
101
109
  「a=0 b=10 c=0」は「0-10-0」と見るのが正解で「a=1 b=0 c=0」よりも詳細性が低いと評価されます。
@@ -106,4 +114,18 @@
106
114
 
107
115
 
108
116
 
117
+ ### 開発者ツール
118
+
119
+
120
+
121
+ 詳細性は計算すれば出ますが、全てのセレクタを網羅するのは大変なので、開発者ツールを活用する事をお勧めします。
122
+
123
+ 開発者ツールを使えば、上書きされたセレクタは「打ち消し線」で表現されます。
124
+
125
+
126
+
127
+ - [ページとスタイルの調査と編集  |  Web  |  Google Developers](https://developers.google.com/web/tools/chrome-devtools/inspect-styles/?hl=ja)
128
+
129
+
130
+
109
131
  Re: AliciaKeys さん

1

typo修正

2017/08/01 10:06

投稿

think49
think49

スコア18166

test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
 
8
8
 
9
- 「中」が「孫要素」なのか「子要素」なのかによって記述が変わりますが、子孫要素と仮定するなら「子孫結合子」、子要素と仮定するなら「子結合子」で表現できます。
9
+ 「中」が「孫要素」なのか「子要素」なのかによって記述が変わりますが、子孫要素と仮定するなら「子孫結合子」、子要素と仮定するなら「子結合子」で表現できます。
10
10
 
11
11
 
12
12