/
377.txt
432 lines (327 loc) · 16.7 KB
/
377.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
[FIG(pull-quote)[
> [103]
The World Wide Web's markup language has always been HTML.
[FIGCAPTION[
[[HTML Standard]]
]FIGCAPTION]
]FIG]
[128] [DFN[[RUBY[HTML][えいちてぃーえむえる]]]] ([DFN[Hypertext Markup Language]] /
[DFN[ハイパーテキストマーク付け言語]]) は、 [[World Wide Web]] ([[Web]])
の[[マーク付け言語]]です。[[文書]]や[[アプリケーション]]の構造と動作を記述できる[[マーク付け言語]]として、
歴史上世界で最も広く普及し、現在も無数に利用されています。
[PREAMBLE[
[13] 「[[HTML]]」は、[[マーク付け言語]]の[[語彙]]およびそれに関連した [[API]]
の総称であると共に、これを記述するための構文の名称でもあります。
[1] 構文としての「HTML」は、 [[HTML構文]]を参照。
]PREAMBLE]
* 仕様書
[REFS[
- [129] [[HTML Standard]] <http://c.whatwg.org/>
]REFS]
* マーク付け言語
[104] [[HTML]] は、非常に多くの機能で構成されています。
[FIG(short list)[
- [[HTML文書]]・[[XHTML文書]]
- [[HTML要素]]・[[HTMLの属性]]・[[HTML名前空間]]
- [[HTML構文]]・[[XHTML]]
-- [[HTMLの文書型宣言]]
- [[HTML表モデル]]
- [[マイクロデータ]]
- [[Web Forms]]
- [[媒体要素]]
- [[プラグイン]]
- [CODE(HTMLe)@en[canvas]]
- [[スクリプト]]
- [[Web Workers]]
- [[HTML DOM]]
- [[イベントループ]]
- [[閲覧文脈]]
- [[Web Storage]]
- [[Web Messaging]]
- [[WebSockets]]
- [[HTML における他言語統合点]]
- [[HTMLのレンダリング]]
]FIG]
* MIME 型
[6] [[HTML文書]]の [[MIME型]]は [CODE(MIME)@en[[[text/html]]]] です。
;; [CODE(MIME)@en[[[text/html]]]] を参照。
[7] [[XML]] 構文で記述された [[XHTML]] [[文書]]には [[XML MIME型]]が使われます。
* データ構造
[24] [[HTML文書]]は、 [[DOM]] によって表される[[データ構造]]を[[文字列]] (または[[バイト列]])
として表したものです。
[25] [[仕様書]]上は専ら [[DOM]] によって [[HTML]] が規定されていますが、
[[Web互換性]]に影響のない範囲では、他の内部データ表現を用いることもできます。
例えば、 [[Webブラウザー]]ではない、特定の処理のみを行う専用の[[ソフトウェア]]では、
[[HTML文書]]を[[構文解析]]した結果を [[DOM]] とするかわりに、
内容を間引いて処理しやすい形に加工した[[データ構造]]で扱うこともできます。
[26] 具体的には、 [[DOM]] 以外に次のような[[データモデル]]が [[HTML]] の処理に使われています。
[FIG(short list)[
- [[XPath 1.0データモデル]]
- [[XDM]]
- [[SAX]]
- [[わびさび方式]]
]FIG]
;; この他にも、特別な名前のない特定ソフトウェアの専用の内部形式が色々あります。
[27] [[HTML文書]]は複雑なので、[[正規表現]]で処理することはできません。
[[HTML文書]]の処理には、[[HTML構文解析器]]が必要です。
* Web のマーク付け言語としての HTML
[19] [[Web]] の[[マーク付け言語]]は、 [[Web]] の誕生から現在に至るまで、常に [[HTML]]
でした [SRC[>>103]]。
[20] [[SGML]]、[[VRML]]、[[Microsoft Office]]、[[XML]]、[[PDF]]、[[Flash]]、[[Silverlight]]
など色々な技術や製品がこの地位を狙いましたが、どれも [[HTML]]
を置き換えることはできませんでした。
[22] [[Web]] の開発者の [[TimBL]] が代表をつとめる団体 [[W3C]] もまた、
[[HTML]] を [[XML]]・[[XHTML]] で置き換えることを目指しており、 [[HTML]]
のことをまるで怨念か何かのように扱っていました [SRC[>>21]] が、
10年近い迷走の果てに何一つ生み出せない、完全な失敗に終わりました ([[XHTML 2.0]] を参照)。
[23] その間も [[HTML]] の開発を継続していた民間団体 [[WHATWG]]
の主張こそが本項冒頭の「[[Web]] の[[マーク付け言語]]は、ずっと [[HTML]] だった」
[SRC[>>103]] 云々なのですが、 [[W3C]] もしれっとこれを[[コピペ]]して自団体の文書に掲載し、
本家面しているようです。 [[W3C]] にとっては最早 [[XHTML]] は[[黒歴史]]なのでしょうか。
* 歴史
[2] 詳しくは[[HTMLの歴史]]、[[HTMLの仕様書]]を参照。
[12] [[HTML]] には主として次の版がありました。
[FIG(list short)[
= [[HTML 1.0]]
= [[HTML 2.0]]
= [[HTML 2.x]]
= [[HTML 3.0]]
= [[HTML 3.2]]
= [[HTML4]]
= [[XHTML 1.0]]
= [[XHTML 1.1]]
= [[XHTML2]]
= [[XHTML 1.2]]
= [[HTML5]]
= [[HTML 5.1]]
= [[HTML 5.2]]
= [[HTML Standard]]
]FIG]
[11] このうち、 [[HTML 3.0]] およびそれ以前は [[IETF]] の手続き上[[廃止]]または失効しています。
[[XHTML2]] や [[XHTML 1.2]] は未完成のまま破棄されました。それ以外の [[HTML 5.0]] およびそれ以前は、
形式的には現在も有効な [[W3C勧告]]ですが、実質的に[[廃止]]状態にあります。
[3] 現在は [[HTML]] は [[HTML Standard]] で規定されています。
[14] [[HTML]] 仕様の開発は次の[[標準化団体]]が行ってきました。
[FIG(short list)[
- [[www-talk]]
- [[www-html]]
- [[ietf-iiir]]
- [[ietf-html]]
- [[W3C]] [[HTML ERB]]
- [[W3C]] [[HTML WG]] (旧)
- [[ISO/IEC]] [[JTC1]]/[[SC18/WG8]]
- [[ISO/IEC]] [[JTC1]]/[[SC34]]
- [[W3C]] [[RDF in XHTML Task Force]]
- [[W3C]] [[XHTML2 WG]]
- [[WHATWG]]
- [[W3C]] [[HTML WG]] (新)
- [[W3C]] [[WebApps WG]]
- [[WICG]]
- [[W3C]] [[WPWG]]
]FIG]
[15] 現在は主として [[WHATWG]] が開発しています。
* 実装
[4] [[HTML]] の[[クライアント]]実装については、 [[Webブラウザー]]を参照。
* 上位層
[5] [[HTML]] を利用し、その上に構築された技術には、次のものがあります。
[FIG(short list)[
- [[Netscape Bookmark File Format]]
- [[HTA]]
- [[マイクロフォーマット]]
- [[Web Slice]]
- [[CF_HTML]]
- [[S5]]
- [[GRDDL]]
- [[schema.org]]
- [[OGP]]
- [[RSS Autodiscovery]]
- [[Mobile Link Discovery]]
- [[Account Auto-Discovery]]
- [[Hatena ID Discovery Lite]]
- [[single-page application]]
- [[Chrome拡張]]
- [[Opera拡張]]
- [[Dashboard Widget]]
- [[EPUB]]
- [[Pingback]]
- [[HTMLメール]]
- [[HTML Help]]
- [[TTZ]]
- [[TDHT]]
- [[AMP HTML]]
- [[Instant Articles]]
]FIG]
* 前処理
[8] [[HTML]] に[[鯖]]側などで適用される[[前処理]]の構文を加えた特定用途向けの[[マーク付け言語]]や[[処理系]]には次のものがあります。
[FIG(short list)[
- [[SSI]]
- [[PHP]]
- [[ASP]]
- [CODE(perl)@en[[[HTML::Template]]]]
- [[Template Toolkit]]
- [[ReSpec]]
- [[Temma]]
- [[Bikeshed]]
- [[Riot]]
- [[Haml]]
- [[Meta-HTML]]
- [[CDML]]
]FIG]
[9] [[HTML]] に変換されることを前提とした、あるいは主たる用途となっている特定用途向けの[[マーク付け言語]]には次のものがあります。
[FIG(short list)[
- [[HNF]]
- [[tDiaryの日記フォーマット]]
- [[TDS]]
- 各種 [[Wiki]]
- [[はてな記法]]
- [[H2H]]
- [[Textile]]
- [[Markdown]]
- [[クリップボード用HTML]]
]FIG]
* 派生
[10] [[HTML]] から派生した、あるいは強く影響を受けた[[マーク付け言語]]等については[[HTMLもどき言語]]を参照してください。
* メモ
[77] [[HTMLの参考文献]]も参照してください。
- [48] ''HTML'' でぐぐっても [[W3C]] が1位にならない。槍田。
- [50] ''HTML'' は[[富士通]]株式会社の[[日本国]]における[[登録商標]] (第4019186号) です。
- [63] この頁の埋め込み画像は、 W3C の昔の HTML ロゴ(?)2種類を参考にして描きました。ちっちゃくてわかりにくいですが。
- [64] ''T'' がぴょこんと出てる絵可愛いのに、何でやめちゃったんでしょうね?
[89]
[CITE[METADATA IN HTML]] <http://www.hixie.ch/specs/html/metadata>
([[名無しさん]])
[97]
[CITE[Levels of HTML knowledge | 456 Berea Street]] <http://www.456bereastreet.com/archive/200605/levels_of_html_knowledge/>
([[名無しさん]] [WEAK[2006-05-31 22:02:05 +00:00]])
[98]
[CITE[Your HTML level - Anne’s Weblog about Markup & Style]] <http://annevankesteren.nl/2006/06/html-level>
([[名無しさん]] [WEAK[2006-06-04 08:14:39 +00:00]])
[100]
[CITE[Websites as graphs - an HTML DOM Visualizer Applet]] <http://www.aharef.info/static/htmlgraph/>
([[名無しさん]] [WEAK[2006-06-17 12:40:37 +00:00]])
[105]
[CITE[Main Page - Htmlpedia]] <http://www.htmlpedia.org/wiki/Main_Page>
([[名無しさん]] [WEAK[2006-10-18 22:22:39 +00:00]])
[106]
[CITE[Data persistence - Anne’s Weblog]] <http://annevankesteren.nl/2006/10/data-persistence>
([[名無しさん]] [WEAK[2006-10-26 23:09:45 +00:00]])
[107]
[[Web//統計]]
([[名無しさん]] [sage])
[110]
[CITE[Semantics in HTML - 1.”traditional semantic HTML” at microformatique - a blog about microformats and “data at the edges”]] ([CODE[2007-01-11 09:09:55 +09:00]] 版) <http://microformatique.com/?p=83>
([[名無しさん]] [WEAK[2007-01-11 00:17:40 +00:00]])
[111]
[CITE[Built in Semantics in HTML at microformatique - a blog about microformats and “data at the edges”]] ([CODE[2007-01-11 09:29:07 +09:00]] 版) <http://microformatique.com/?p=82>
([[名無しさん]] [WEAK[2007-01-11 00:30:45 +00:00]])
[112]
[CITE@en[draft-kikuchi-web-cert-repository-00 - Internet Public Key Infrastructure:]] ([CODE[2007-01-27 23:13:29 +09:00]] 版) <http://tools.ietf.org/html/draft-kikuchi-web-cert-repository-00>
[113]
[CITE[Geekなぺーじ:HTML知識レベル]] ([CODE[2007-02-06 09:05:17 +09:00]] 版) <http://www.geekpage.jp/blog/?id=2007/2/5>
[115]
[CITE[Index of /html]] ([CODE[2007-02-12 11:58:12 +09:00]] 版) <http://tc.labs.opera.com/html/>
[116]
[CITE[Semantics in HTML Part II - standardizing vocabularies at microformatique - a blog about microformats and “data at the edges”]] ([CODE[2007-02-23 08:38:20 +09:00]] 版) <http://microformatique.com/?p=97>
([[名無しさん]] [WEAK[2007-02-22 23:39:29 +00:00]])
[117]
[CITE@en[Semantic data extractor - QA @ W3C]] ([CODE[2006-11-15 14:51:23 +09:00]] 版) <http://www.w3.org/2003/12/semantic-extractor.html>
([[名無しさん]])
[118]
[CITE[HTMLタグを写真で表現!『The Visual HTML Jokes Pool」』 | P O P * P O P]] ([CODE[2007-02-26 09:13:37 +09:00]] 版) <http://www.popxpop.com/archives/2007/02/html.html>
([[名無しさん]] [WEAK[2007-02-26 23:20:08 +00:00]])
[119]
[CITE[HTML Tags illustrated | haha.nu - a lifestyle blogzine]] ([CODE[2007-02-27 08:02:06 +09:00]] 版) <http://haha.nu/misc/html-tags-illustrated/>
([[名無しさん]] [WEAK[2007-02-26 23:30:35 +00:00]])
[120]
[CITE[Flickr: The Visual HTML Jokes Pool]] ([CODE[2007-02-27 08:19:54 +09:00]] 版) <http://flickr.com/groups/htmljokes/pool/>
([[名無しさん]] [WEAK[2007-02-26 23:30:50 +00:00]])
[121]
[CITE@en-us[TeresaCentric » Best Geek Joke Ever: Head-Body Tattoo]] ([CODE[2007-03-06 22:33:27 +09:00]] 版) <http://teresacentric.com/2007/03/798/>
([[名無しさん]] [WEAK[2007-03-06 13:35:07 +00:00]])
[122]
[CITE@en-us[microformatique - a blog about microformats and “data at the edges” : Semantics in HTML Part III - Towards a semantic web]] ([CODE[2007-03-15 19:48:34 +09:00]] 版) <http://microformatique.com/?p=108>
([[名無しさん]])
[123]
[CITE[WEBTECH - webtech:vantguarde]] ([CODE[2007-03-15 21:30:02 +09:00]] 版) <http://web.g.hatena.ne.jp/vantguarde/20070313#1173728433>
([[名無しさん]] [WEAK[2007-03-15 12:31:45 +00:00]])
[124]
[CITE[A Beginner's Guide to HTML]] ([CODE[2003-08-15 22:48:58 +09:00]] 版) <http://ccat.sas.upenn.edu/jod/primer.html#Acronyms>
昔はみんな見ていたであろう [[NCSA]] の [[HTML]] 入門ですが、
[[SGML]] について
> This is perhaps best be thought of as a programming language for style sheets.
というわけのわからん説明のされ方で、その後で [[HTML]]
は [[SGML]] の [[DTD]] だとか言われるわけです。
それが日本語訳では
[CITE[HTML入門 (1995/6/1 編集)]] ([CODE[1997-12-24 11:02:35 +09:00]] 版) <http://web.archive.org/web/19980131092758/ringo.sfc.keio.ac.jp/otherdocuments/html.html#Acronyms>
> これはおそらく、スタイルシートを記述するための最良のプログラミング言語である。
と、 [[SGML]] は[[プログラミング言語]]であると誤訳してしまっています。
これが [[HTML]] [[プログラミング言語]]説の源流の1つの可能性はあります。
([[名無しさん]])
[125]
[CITE@en[My involvement with the early days of the Web]] ([CODE[2004-12-03 00:23:13 +09:00]] 版) <http://www.w3.org/People/Raggett/the-early-days-of-the-Web.html>
([[名無しさん]])
[126]
[CITE[C90%M10%Y40%: HTML売りの少女]] ([CODE[2007-04-03 15:46:22 +09:00]] 版) <http://www.cyan.co.jp/blog/2007/04/html.html>
([[名無しさん]] [WEAK[2007-04-03 23:52:24 +00:00]])
[127]
[CITE[最速インターフェース研究会 :: HTMLドキュメントを解析して特徴的なループを見つけるBookmarklet]] ([CODE[2007-06-02 22:43:52 +09:00]] 版) <http://la.ma.la/blog/diary_200705301424.htm>
([[名無しさん]] [WEAK[2007-06-02 13:46:17 +00:00]])
[130] [CITE[IRC logs: freenode / #whatwg / 20091007]]
([TIME[2009-12-07 22:54:41 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20091007#l-489>
[131] [CITE[HTML - Trademark by European Organization for Nuclear Research Geneva , - Serial Number: 74719487]]
( ([TIME[2011-04-10 19:40:11 +09:00]] 版))
<http://www.trademarkia.com/html-74719487.html>
[132] [CITE[IRC logs: freenode / #whatwg / 20110325]]
( ([TIME[2011-04-10 19:16:01 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20110325#l-754>
[133] [CITE[IRC logs: freenode / #whatwg / 20111115]]
( ([TIME[2011-11-16 23:10:22 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20111115#l-1246>
[134] [CITE[IRC logs: freenode / #whatwg / 20120420]]
( ([TIME[2012-04-24 21:56:56 +09:00]] 版))
<http://krijnhoetmer.nl/irc-logs/whatwg/20120420#l-1055>
[135] [CITE[''''''[''''''whatwg'''''']'''''' Administrivia: Update on the relationship between the WHATWG HTML living standard and the W3C HTML5 specification]]
( ([TIME[2012-07-20 07:48:39 +09:00]] 版))
<http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-July/036662.html>
[136] [CITE[The spec evolves...]]
( ([TIME[2003-08-13 16:17:14 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-talk/1992NovDec/0155.html>
[137] [CITE[rethinking the HTML DTD.]]
( ([TIME[2003-08-13 23:59:46 +09:00]] 版))
<http://lists.w3.org/Archives/Public/www-talk/1992JulAug/0012.html>
[138] [CITE@en-US[HTML differences from HTML4]]
( ([TIME[2013-05-04 01:03:47 +09:00]] 版))
<http://html-differences.whatwg.org/>
[139] [CITE[''''''[''''''whatwg'''''']'''''' HTML differences from HTML4 document updated]]
( ([TIME[2013-05-04 10:14:51 +09:00]] 版))
<http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2013-May/039503.html>
[140] [CITE@en-US[Internationalization Tag Set (ITS) Version 2.0]]
( ([TIME[2013-10-27 19:39:43 +09:00]] 版))
<http://www.w3.org/TR/its20/#def-html>
[141] [CITE[XLIFF Version 2.0]]
( ([TIME[2014-08-06 01:00:00 +09:00]] 版))
<http://docs.oasis-open.org/xliff/xliff-core/v2.0/os/xliff-core-v2.0-os.html#fs-mod>
[FIG(quote)[
[FIGCAPTION[
[16] [CITE@en_US[Supported HTML Subset | Qt 4.8]]
([TIME[2015-11-03 21:56:20 +09:00]] 版)
<http://doc.qt.io/qt-4.8/richtext-html-subset.html>
]FIGCAPTION]
> Qt's text widgets are able to display rich text, specified using a subset of HTML 4 markup. Widgets that use QTextDocument, such as QLabel and QTextEdit, are able to display rich text specified in this way.
]FIG]
[17] [CITE[Amazon Kindle ダイレクト・パブリッシング: Amazon の Kindle ストアでの電子出版に関するヘルプ]]
([TIME[2015-11-25 02:43:36 +09:00]] 版)
<https://kdp.amazon.co.jp/help?topicId=A1JPUWCSD6F59O>
[FIG(quote)[
[FIGCAPTION[
[18] [CITE[Amazon Kindle ダイレクト・パブリッシング: Amazon の Kindle ストアでの電子出版に関するヘルプ]]
([TIME[2015-11-25 02:44:05 +09:00]] 版)
<https://kdp.amazon.co.jp/help?topicId=A1B8OEIMUN0HFY>
]FIGCAPTION]
> HTMLタグ 属性 値 説明
> <mbp:pagebreak /> 強制的に改ページします。
> <mbp:nu> 囲まれたテキストを「下線なし」として指定します(<font>タグ属性に優先します)。
> <mbp:section> 本のセクションを定義します。
]FIG]
[21] [CITE@ja[HTML の呪縛を解き放て]] ([TIME[2006-08-31 02:16:23 +09:00]]) <https://www.w3.org/2005/Talks/1122-orf-cdf/>