-
Notifications
You must be signed in to change notification settings - Fork 4
/
117.txt
331 lines (272 loc) · 13 KB
/
117.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
[16] [DFN[[RUBYB[[[Webブラウザー]]]@en[Web browser]]]]は、[[利用者]]が[[Web]]
を[[閲覧]]するための[[ソフトウェア]]です。
* Web ブラウザーの一覧
[FIG(list short)[
- [[WorldWideWeb]]
- [1] [[Netscape Navigator]] ([[NN]]), [[Netscape Communicator]] ([[NC]])
- [2] [[Mozilla]]
- [3] [[Internet Explorer]] ([[M$IE]]): [[WinIE]], [[MacIE]]
- [4] [[w3m]]
- [[emacs-w3m]]
- [5] [[Lynx]]
- [6] [[Opera]]
- [7] [[HotJava]]
- [8] [[Amaya]]
- [9] [[Mosaic]]
- [10] [[Safari]]
- [11] [[Infomosaic]]
- [13] [[Chimera]]
- [14] [[konqueror]]
- [15] [[Galeon]]
- [[Chrome]]
- [[Yahoo! Axis]]
- [[和ジラ]]
- [[MutualTestFox]]
- [[Cello]]
- [[インターネットチャンネル]]
- [[ニンテンドーDSブラウザー]]
- [[ニンテンドーDSiブラウザー]]
- [[インターネットブラウザー]]
- [[PhantomJS]]
- [[SlimerJS]]
- [[Lite]]
- [[AudienceBrowserAdvance]]
- [[Yandex.ブラウザー]]
- [[Midori]]
- [[Kinza]]
]FIG]
* Web ブラウザーの動作に関する概念
[FIG(list short)[
- [[イベントループ]]
- [[タスク]]、[[マイクロタスク]]、[[大域スクリプト片付けジョブ]]
- [[ストレージミューテックス]]
- [[閲覧文脈]]
- [[大域オブジェクト]]
- [[文書環境]]
- [[ワーカー環境]]
- [[環境設定群オブジェクト]]
- [[関係する類似起源閲覧文脈の単位]]
- [[navigate]]
- [[ごみ収集 (Web)]]
- [[レンダリング]]
- [[フォーカス]]
- [[キャッシュ]]
- [[同一起源ポリシー]]
- [[セッション (Web)]]
- [[private browsing]]
- [[ダウンロード]]
- [[物理形を得る]]
- [[クリップボード]]
]FIG]
* Web ブラウザーのソフトウェア構成に関する概念
[FIG(short list)[
- [[利用者エージェント]]
- [[クライアント]]
- [[レンダリングエンジン]]
- [[構文解析器 (Web)]]
- [[スクリプトエンジン]]
- [[ストレージ (Web)]]
- [[証明書データベース]]
- [[名前解決器]]
- [[プラグイン]]
- [[開発者ツール]]
- [[AT]]
- [[利用者]]
]FIG]
* Web ブラウザーの UI に関する概念
[FIG(short list)[
- [[窓]]、[[タブ]]
- [[アドレスバー]]
- [[タイトルバー]]
- [[メニューバー]]
- [[ツールバー]]
- [[状態バー]]
- [[サイドバー]]
- [[スクロールバー]]
- [[選択 (Web)]]
- [[鍵盤操作]]
-- [[キャレット]]
-- [[アクセスキー]]
- [[マウス操作]]
-- [[マウスポインター]]
- [[ダイアログ]]
- [[履歴]]
-- [[戻る]]、[[進む]]
-- [[再読み込み]]
--- [[スーパーリロード]]
- [[ホームページ]]
- [[プラットフォーム (Web)]]
- [[viewport]]
- [[tooltip]]
- [[文脈メニュー]]
- [[焦点]]
- [[空間ナビゲーション]]
- [[エラーコンソール]]
- [[通知]]
- [[favicon]]
- [[栞]]
- [[ダウンロードマネージャー]]
- [[設定]]
- [[翻訳 (Web)]]
- [[ソース表示]]
- [[ページ情報]]
- [[ページ内検索]]
]FIG]
* 設定項目
[54] 全体の設定:
[FIG(short list)[
- [[プロキシ]]
- [[DNT]]
- [[第三者クッキー]]許可
]FIG]
[51] 全体の設定と[[閲覧文脈]]ごと、[[ドメイン]]ごとなど細かい単位での設定ができる
(ことがある) もの:
[FIG(short list)[
- [[スクリプト有効]]
- [CODE(DOMa)@en[[[cookieEnabled]]]]
- [[利用者スタイルシート]]
- [[画像]]の読み込み
]FIG]
[52] [[閲覧文脈]]ごと、[[文書]]ごとなどで設定できる (ことがある) もの:
[FIG(short list)[
- [[ズーム]]
- [[文字コード]]
- [[ポップアップ]]許可
- [[プラグイン]]許可
]FIG]
* 拡張と API
[39] [[Webブラウザー]]に機能追加を行うソフトウェアやその [[API]] には、
次のものがあります。
[FIG(short list)[
- [[NPAPI]]
- [[PPAPI]]
- [[ActiveX Control]]
- [[IEブラウザ拡張]]
- [[Firefox拡張]]
- [[Chrome拡張]]
- [[Safari拡張]]
- [[Opera拡張]]
- [[Firefoxテーマ]]
- [[Personas]]
- [[WebDriver]]
]FIG]
;; [[プラグイン]]や[[ヘルパーアプリケーション]]も参照。
[56] その他 [[Webブラウザー]]を機能拡張するソフトウェアには次のようなものがあります。
[FIG(short list)[
- [[Google Gears]]
- [[Chrome Frame]]
- [[Selenium]]
]FIG]
* 埋め込み Web ブラウザー
[40] 多くの [[Webブラウザー]]は、単独の[[アプリケーション]]としてだけでなく、
他の[[アプリケーション]]に組み込む[[制御子]] ([[ウィジェット]]) として利用できる
[[API]] を有しています。
[41] 古くは [[IE]] が [[Windows]] 標準の [[Webブラウザー]]コンポーネントとして提供されており、
これを組み込んだ [[Windows]] アプリケーションがいくつもありました。
[42] [[スマートフォンアプリ]]は機能の一部または全部を [[OS]] の提供する
[[Webブラウザー]]機能により実装していることがあり、これは[[アプリ内ブラウザー]]や
[[Webビュー]]などと呼ばれます。
[43] こうした埋込み型 [[Webブラウザー]]は、単独の [[Webブラウザー]]と [[Cookie]]
や[[フォーム]]等のデータを共有していることもありますが、大抵は別管理になっています。
[45] 埋込み型 [[Webブラウザー]]は当該[[アプリケーション]]と統合された [[UI]]
を提供できることから、より良い[[利用者体験]]を提供できる可能性があります。
一方で用途によっては機能の少ない [[Webブラウザー]]でしかなく、[[利用者]]に不便を強いたり、
[[セキュリティー]]上の問題を生じたりすることもあります。
[EG[
[46] 例えば任意のページを表示できる [[Webブラウザー]]機能を組み込みながら、
そのページの [[URL]] や [[TLS証明書]]の情報を表示できないような場合には、
[[フィッシング]]などに悪用される危険性があります。
]EG]
[EG[
[48] 例えば[[リンク]]を新しい[[窓]]で開く機能が埋め込み [[Webブラウザー]]では提供されないかもしれず、
[[利用者]]は不便に思うかもしれません。
]EG]
;; [49] [[OAuth]] を埋め込み [[Webブラウザー]]で実装するのは好ましくないと考えられています。
([[認可エンドポイント]]参照。)
[44] より発展したものとして、 [[Webブラウザー]]の[[レンダリングエンジン]]等を流用したアプリケーション実行環境が
[[OS]] の標準機能として、あるいは開発環境等と共に提供される実行環境として用意されていることがあります。
その場合、当該実行環境上のアプリケーションとしての[[レンダリング]]の一部として、
埋込み型の [[Webブラウザー]]が用意されることもあります。
[EG[
[47] 例えば [[Chrome Apps]] には、 [CODE(HTMLe)@en[[[webview]]]] [[要素]]があります。
[CODE(HTMLe)@en[[[iframe]]]] [[要素]]とは違って、[[最上位閲覧文脈]]を作成するものになりますから、
埋め込み [[Webブラウザー]]と理解するべきものです。
]EG]
* 自動更新
[12] 一般利用者が [[Webブラウザー]]を手動で更新せず古いものを使い続け [[Web開発]]と [[Web]]
の発展を妨げてきた反省から、また[[インターネット]]常時接続環境の一般化や
[[Webブラウザー]]開発の活発化から、 [[Webブラウザー]]には[[自動更新]]機能が組み込まれる、
あるいは [[OS]] 等の自動更新機能が利用されることが10年代中頃には当然になってきました。
;; [17] [[IE]] と古い[[スマートフォン]]を除けば、もはや最新版以外の古い版の
[[Webブラウザー]]を [[Web開発]]において意識することはなくなりつつあります。
[38] [[セキュリティー]]、互換性などの理由で次のデータは定期的に更新する必要があり、
[[Webブラウザー]]の更新により、またはそれとは別の方法で [[Webブラウザー]]開発元等により配布される最新データに更新されるようになっています。
[FIG(short list)[
- [[TLSルート証明書]]
- [[Public Suffix List]]
- [[HSTS Preload]]
- [CODE[[[ieCompatViewList.xml]]]] ([[IE]])
- [[Chrome CRLSet]]
- [[OneCRL]]
- [[TLS]] の互換性リスト
- [[Browser JavaScript]] ([[Opera]])
- [[Safe Browsing]]
]FIG]
* 歴史
[55] [[文書]]を[[利用者]]に提示することが主たる機能である[[利用者エージェント]]のこと。 Browser。閲覧ソフトウェア。
([[ISO‐HTML]] <http://purl.org/NET/ISO+IEC.15445/15445.html#DEFS> 4.1 参照。)
* メモ
[34] [CITE[ウェブ ブラウザ小史 2001]] <http://www.kanzaki.com/works/2001/pub/ua-history.html>
([[名無しさん]] [WEAK[2005-12-06 23:43:59 +00:00]])
[33] [CITE[Browser memo]] <http://www.kmc.gr.jp/~ranran/browsers/browsers.html>
[32] [CITE[Web Devout]] <http://www.webdevout.net/>
[31] [CITE[MultiBrowser Appliance]] <http://mbappliance.colinfinck.de/>
([[名無しさん]] [WEAK[2006-12-23 03:58:37 +00:00]])
[30] [CITE@ja[スラッシュドット ジャパン | IEの世界シェア、80%を割り込む]] ([CODE[2007-01-16 10:09:41 +09:00]] 版) <http://slashdot.jp/article.pl?sid=07/01/15/0526245&from=rss>
([[名無しさん]] [WEAK[2007-01-16 01:10:26 +00:00]])
[29] [CITE@en[Mac OS X Web browser rundown 2007 | 456 Berea Street]] ([[Roger Johansson]] 著, [CODE[2007-10-27 11:49:38 +09:00]] 版) <http://www.456bereastreet.com/archive/200710/mac_os_x_web_browser_rundown_2007/>
[28] [CITE@en[Re: '''['''dom3core''']''' getAttribute from Maciej Stachowiak on 2005-12-02 (www-dom@w3.org from October to December 2005)]] ([[Maciej Stachowiak (mjs@apple.com)]] 著, [CODE[2007-09-18 20:22:15 +09:00]] 版) <http://lists.w3.org/Archives/Public/www-dom/2005OctDec/0047.html>
- [18] [WEAK[2003-09-19 07:18:01 +00:00]] ''[[名無しさん]]'': ''【IT】「IE以外のブラウザは必要ない!?」300人中241人がIE一筋'' <http://news5.2ch.net/test/read.cgi/newsplus/1063953319/> : 母集団が小さい上に偏っててこんな調査に意味があるとは思えないけどさ、そんな調査で59人が [[IE]] 以外も使っているらしいよ。これってすごくない? もう IE も落ち目だね。
<http://groups.google.co.jp/groups?threadm=7u4rmb%2497m%241%40masamune.dais.is.tohoku.ac.jp>
<http://groups.google.co.jp/groups?selm=7srsmh%24ct3%241%40masamune.dais.is.tohoku.ac.jp>
[19] 雑誌記事によると、1995年11月に[[フィリップス]]が英国で
[[CD-I]] 用インターネット・ブラウザを発売。
[WEAK[インターネット・ブラウザって何か分からないけど、たぶん WWW ブラウザが中核でしょう。]]
99ポンド (当時1万4千円くらい)
で14.4kbps のモデムつき。
入力はソフトウェア鍵盤または別売りの鍵盤で。
- [20] 最初のブラウザが text browser だったという俗説は意外と指示されていますよね。もちろん嘘。 [[TimBL]] の [[WorldWideWeb]] on [[NeXT]] の画面写真を一度は見てみるといい。
- [21] ''Browser memo'' <http://www.kmc.gr.jp/~ranran/browsers/browsers.html#w3>
[22]
>>20 それは UI は CUI → GUI に、
WWW ブラウザは text → GUI にと進化する(べき)というマルクス史観なのですよ(藁
([[名無しさん]])
[23]
[CITE[evolt.org - Browser Archive]] <http://browsers.evolt.org/>
([[名無しさん]])
[24]
[CITE[スラッシュドット ジャパン | PSPの隠しブラウザでウェブブラウジング]] <http://slashdot.jp/articles/05/03/28/0426228.shtml?topic=31>
([[名無しさん]])
[25]
[CITE@en[Browser timeline - Wikipedia, the free encyclopedia]] ([TIME[2007-06-23 02:09:59 +09:00]] 版) <http://en.wikipedia.org/wiki/Browser_timeline>
([[名無しさん]] [WEAK[2007-06-24 07:37:57 +00:00]])
[26] [CITE[Process Models - The Chromium Projects]]
( ([TIME[2013-11-15 23:46:41 +09:00]] 版))
<http://www.chromium.org/developers/design-documents/process-models>
[27] [CITE[IRC logs: freenode / #whatwg / 20090826]]
([TIME[2009-10-15 22:55:13 +09:00]] 版)
<http://krijnhoetmer.nl/irc-logs/whatwg/20090826#l-261>
[35] ( ([TIME[2014-08-29 03:52:04 +09:00]] 版))
<https://ci.testling.com/>
[36] [CITE[Check Browser Compatibility, Cross Platform Browser Test - Browsershots]]
( ([TIME[2014-08-29 03:57:48 +09:00]] 版))
<http://browsershots.org/>
[37] [CITE@en[Sauce Labs: Selenium Testing, Mobile, Cross Browser Testing & More]]
( ([[Sauce Labs]] 著, [TIME[2014-08-29 04:57:00 +09:00]] 版))
<https://saucelabs.com/>
[50] [CITE[Network Stack - The Chromium Projects]]
([TIME[2015-03-21 10:14:33 +09:00]] 版)
<https://www.chromium.org/developers/design-documents/network-stack>
[53] [CITE@en-US[the cost of monoculture | Mozilla in Asia]]
([TIME[2015-04-12 17:39:10 +09:00]] 版)
<https://blog.mozilla.org/gen/2007/02/27/the-cost-of-monoculture/>