回答編集履歴

5

見出し追加

2018/11/01 05:24

投稿

Higemura
Higemura

スコア274

test CHANGED
@@ -98,7 +98,7 @@
98
98
 
99
99
 
100
100
 
101
- ### 返答 liタグの左のテキスト側のスペースはどうなるのか?
101
+ ### 返答 liタグの左側のスペースはどうなるのか?
102
102
 
103
103
 
104
104
 

4

見出し追加

2018/11/01 05:24

投稿

Higemura
Higemura

スコア274

test CHANGED
@@ -98,7 +98,7 @@
98
98
 
99
99
 
100
100
 
101
- **返答 liタグの左### ヘディングのテキスト側のスペースはどうなるのか?**
101
+ ### 返答 liタグの左のテキスト側のスペースはどうなるのか?
102
102
 
103
103
 
104
104
 

3

見出し追加

2018/11/01 05:23

投稿

Higemura
Higemura

スコア274

test CHANGED
@@ -98,7 +98,7 @@
98
98
 
99
99
 
100
100
 
101
- **返答 liタグの側のスペースはどうなるのか?**
101
+ **返答 liタグの左### ヘディングのテキスト側のスペースはどうなるのか?**
102
102
 
103
103
 
104
104
 

2

インデント説明

2018/11/01 05:22

投稿

Higemura
Higemura

スコア274

test CHANGED
@@ -89,3 +89,99 @@
89
89
  インライン要素とインラインブロック要素をまとめたデモがこちらです↓
90
90
 
91
91
  [https://codepen.io/Higemura/pen/zmgZNK](https://codepen.io/Higemura/pen/zmgZNK)
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+ **返答 liタグの右側のスペースはどうなるのか?**
102
+
103
+
104
+
105
+ **"この部分"**が空白として認識されるか?と言うことですよね?
106
+
107
+ ```
108
+
109
+ <ul class="list1">
110
+
111
+ "この部分"<li>リスト3</li>
112
+
113
+ "この部分"<li>リスト3</li>
114
+
115
+ "この部分"<li>リスト3</li>
116
+
117
+ "この部分"<li>リスト3</li>
118
+
119
+ "この部分"<li>リスト3</li>
120
+
121
+ </ul>
122
+
123
+ ```
124
+
125
+
126
+
127
+ これはHTMLやそれ以外のプログラム全般に言えることなのですが、
128
+
129
+ **コードの行の左側はどんだけスペースを開けても空白と認識されません。**
130
+
131
+
132
+
133
+ 一般的に左側の空き部分は**"インデント"**として認識されるので、ブラウザに出力されても**"半角スペース"**のような扱いにはならないんです!
134
+
135
+
136
+
137
+ **"インデント"**がある理由はコードの可読性を高めるものとして実装します。
138
+
139
+ **解答欄にはli行の左側に半角スペース2個**入れています。「ulタグの中にliがあるんだよ〜」って意味ですね!
140
+
141
+
142
+
143
+ ```
144
+
145
+ <ul class="list1">
146
+
147
+ "インデント"<li>リスト1</li>"空白"
148
+
149
+ "インデント"<li>リスト2</li>"空白"
150
+
151
+ "インデント"<li>リスト3</li>"空白"
152
+
153
+ "インデント"<li>リスト4</li>"空白"
154
+
155
+ "インデント"<li>リスト5</li>"空白"
156
+
157
+ </ul>
158
+
159
+ ```
160
+
161
+
162
+
163
+ なので"インデント"はソースコードに影響しないので
164
+
165
+
166
+
167
+ ```ここに言語を入力
168
+
169
+ <li>リスト2</li>"空白""空白""空白"<li>リスト3</li>
170
+
171
+ ```
172
+
173
+
174
+
175
+ のようにはならず、
176
+
177
+
178
+
179
+ ```ここに言語を入力
180
+
181
+ <li>リスト2</li>"空白"<li>リスト3</li>
182
+
183
+ ```
184
+
185
+
186
+
187
+ になっていると言うことになります!

1

追記

2018/11/01 05:18

投稿

Higemura
Higemura

スコア274

test CHANGED
@@ -1,4 +1,4 @@
1
- inline-block要素の仕様によるものなのですがinline-blockだとHTML上での改行にスペースを保持してしまうという性質があります。
1
+ inline-block要素の仕様によるものなのですがinline-blockだとHTML上での改行にスペースを保持してしまうという性質があります。
2
2
 
3
3
  なぜそんな仕様なのかと問われるとW3Cのに問い合わせるしかありませんが、HTMLソースをマウスで囲って見るとその理由がわかりやすいと思います。
4
4
 
@@ -60,7 +60,11 @@
60
60
 
61
61
  なのでliタグがinlineやinline-blockの時は **見えない空白** を HTMLコードとして忠実に再現していることになります。
62
62
 
63
+ ※imgタグもデフォルトがinline要素なので**見えない空白**の影響を受けて画像の下に隙間ができます。
64
+
65
+
66
+
63
- その理由にHTMLタグを改行せずに記述すると **見えない空白** 自体HTMLコードに存在しないので、崩れないで表示されるわけです。
67
+ その理由にHTMLタグを改行せずに記述すると**見えない空白**自体HTMLコードに存在しないので、崩れないで表示されるわけです。
64
68
 
65
69
  ```
66
70
 
@@ -78,7 +82,7 @@
78
82
 
79
83
 
80
84
 
81
- 逆に言うと **block要素** が親要素いっぱいまで幅を確保できるので **見えない空白** を無視できる特殊な要素とも言えるかもしれません。
85
+ 逆に言うと**block要素**が**親要素いっぱいまで幅を確保できる**ので **見えない空白** を無視できる特殊な要素とも言えるかもしれません。
82
86
 
83
87
 
84
88