[16] [DFN[[RUBYB[[[Webブラウザー]]]@en[Web browser]]]]は、[[利用者]]が[[Web]]
を[RUBYB[[[閲覧]]]@en[browse]]するための[[ソフトウェア]]です。
文脈上曖昧でない時は、[DFN[[RUBYB[ブラウザー]@en[browser]]]]ともいいます。
[[Web]] における最も代表的で重要な[[利用者エージェント]]の種別です。

[43] [[パソコン]]や[[スマートフォン]]をはじめ、通常の[[利用者]]の操作を想定した現在のほとんどの[[計算機]]には、
[[Webブラウザー]]が搭載されています。

* Web ブラウザーの一覧

[52] [[Webブラウザー]]は、いろいろあります。

[FIG(list short)[ [80] [[Webブラウザー]]製品
- [[WorldWideWeb]]
- [[Line Mode Browser]]
- [1] [[Netscape Navigator]] ([[NN]]), [[Netscape Communicator]] ([[NC]])
- [2] [[Mozilla]]
- [3] [[Internet Explorer]] ([[M$IE]]): [[WinIE]], [[MacIE]]
- [[Emacs/W3]]
- [4] [[w3m]]
- [[emacs-w3m]]
- [5] [[Lynx]]
- [6] [[Opera]]
- [7] [[HotJava]]
- [8] [[Amaya]]
- [[Arena]]
- [9] [[Mosaic]]
- [[Vosaic]]
- [10] [[Safari]]
- [11] [[Infomosaic]]
- [13] [[Chimera]]
- [14] [[konqueror]]
- [[iCab]]
- [[Camino]]
- [15] [[Galeon]]
- [[影鷹]]
- [[Chrome]]
- [[Yahoo! Axis]]
- [[和ジラ]]
- [[MutualTestFox]]
- [[Cello]]
- [[インターネットチャンネル]]
- [[ニンテンドーDSブラウザー]]
- [[ニンテンドーDSiブラウザー]]
- [[インターネットブラウザー]]
- [[PhantomJS]]
- [[SlimerJS]]
- [[Lite]]
- [[AudienceBrowserAdvance]]
- [[Yandex.ブラウザー]]
- [[KOMEIブラウザ]]
- [[Midori]]
- [[Kinza]]
- [[Iceweasel]]
- [[IceCat]]
- [[GNUzilla]]
- [[Explore]]
- [[Vivaldi]]
- [[azur]]
- [[JustView]]
- [[Slimjet]]
- [[Tungsten]]
- [[WebExplorer]]
- [[PCサイトビューアー]]
- [[jigブラウザ]]
- [[Tor Browser]]
- [[Baidu Browser]]
- [[iモードブラウザ2.0]]
- [[Web Browser for Android Wear]]
- [[BBB]]
- [[PIE]]
- [[Lunascape]]
- [[酷鳥]]
- [[チャンネル][チャンネル (Windows CE)]]
- [[あーすブラウザ]]
- [[INTERTop]]の[[ブラウザー]]
- [[RockMelt]]
- [[Jane]] シリーズの内蔵ブラウザー
- [[Craving Explorer]]
- [[StreamTransport]]
- [[Blisk]]
- [[qutebrowser]]
- [[Firefox Focus]]
- [[WWWブラウザ(HTML3.2準拠)]]
- [[Beaker]]
- [[Bromite]]
- [[UDブラウザ]]
- [CITE[[[Pale Moon]]]]
- [[SkyLeap]]
- [CITE[[[Ladybird]]]]
- [CITE[[[MidasWWW]]]]
- [CITE[[[Picea]]]]
-[CITE[[[AudienceBrowser XP]]]]
- [CITE[[[Tango]]]]
- [CITE[[[Browsh]]]]
- [CITE[[[KhmerOS]]]]

]FIG]

[57] [[Webブラウザー]]は、動作する[[プラットフォーム]]や表現形態によっていくつかに分類できます。

[FIG(short list)[ [60] [[Webブラウザー]]の分類
- [[デスクトップブラウザー]]
- [[スマートフォンブラウザー]]
- [[ゲーム機のWebブラウザー]]
- [[テレビのWebブラウザー]]
- [[視覚的利用者エージェント]]
- [[AT]]
- [[音声UA]]
- [[対話的利用者エージェント]]
- [[テキストブラウザー]]
- [[埋め込みブラウザー]]
- [[ガラケーブラウザー]]
- [[モダンブラウザー]]
- [[クローラー]]
- [[Web巡回]]
- [[アンテナ]]
- [[headless browser]]
- [[kiosk mode]]
]FIG]

* Web ブラウザーの動作に関する概念

[68] 
[FIG(list short)[
- [[Webブラウザー実行環境]]
- [[閲覧文脈]]
- [[viewport]]
- [[画布]]
- [[navigate]]
- [[ごみ収集 (Web)]]
- [[レンダリング]]
- [[フォーカス]]
- [[キャッシュ]]
- [[同一起源ポリシー]]
- [[セッション (Web)]]
- [[private browsing]]
- [[ダウンロード]]
- [[物理形を得る]]
- [[クリップボード]]
- [[装置 (Web)]]
- [[Webブラウザー機能のためのfetch]]
]FIG]

[58] 動作中の [[Webブラウザー]]は、次の状態を保持します。
[FIG(list members)[
: [F[[[窓][窓 (Web)]]群]] : 動作中の[[窓][窓 (Web)]]の[[集合]]です。
: [F[[[関連する類似起源閲覧文脈群の単位]]群]]:
:[[共有ワーカー]]群:動作中の[[共有ワーカー]]です。 [CODE(JS)@en[[[new SharedWorker]]]]
で参照されます。
: [F[共有ワーカー管理器]] :
: [F[プラットフォーム][プラットフォーム (Web)]] : [[プラットフォーム依存の動作]]の決定に影響します。
: [F[navigator互換性モード]] : [CODE(DOMi)@en[Navigator]] [[オブジェクト]]の[[属性]]の値に影響します。
: [F[[[既定[CODE(HTTP)@en[User-Agent]]値]]]] : [CODE(HTTP)@en[User-Agent:]] [[ヘッダー]]の値です。
: [[HTTP利用者エージェント]]としての状態 :
[[HTTP利用者エージェント]]参照。
: [F[DNSキャッシュ]] :
: [F[既読URLリスト]] :
: [F[取扱器データベース]] :
: [F[scope to registration map]] :
: [F[[[適用範囲URL]]から[[ジョブキュー][サービスワーカージョブキュー]]への[[写像]]]] :
]FIG]

[62] [[Webブラウザー]]では、[[イベントループ]]、 [[fetch]]
などいくつかの処理が[[並列に]]実行されています。

;; [[並列に]]の項を参照。

* Web ブラウザーのソフトウェア構成に関する概念

[FIG(short list)[
- [[利用者エージェント]]
- [[クライアント]]
- [[埋め込みWebブラウザー]]
- [[レンダリングエンジン]]
- [[構文解析器 (Web)]]
- [[スクリプトエンジン]]
- [[ストレージ (Web)]]
- [[パスワードマネージャー]]
- [[証明書データベース]]
- [[名前解決器]]
- [[プラグイン]]
- [[ヘルパーアプリケーション]]
- [[内容取扱器]]
- [[プロトコル取扱器]]
- [[OpenSearch]] 検索定義
- [[開発者ツール]]
- [[use counter]]
- [[AT]]
- [[利用者]]
- [[Web IDL]]
- [[Webブラウザーの複数プロセス化]]
]FIG]

[44] [[Webブラウザー]]の実装する技術については、 [[WWW]] を参照。

* Web ブラウザーの UI に関する概念

[71] 
[FIG(short list)[
- [[窓システム (Web)]]
- [[窓][窓 (Web)]]
- [[フレーム]]
- [[スクロールバー]]
- [[選択 (Web)]]
- [[命令 (Web)]]
- [[鍵盤操作]]
-- [[キャレット]]
-- [[アクセスキー]]
- [[マウス操作]]
-- [[マウスポインター]]
- [[ダイアログ]]
- [[履歴]]
-- [[戻る]]、[[進む]]
-- [[再読み込み]]
--- [[スーパーリロード]]
-- [[中止]]
- [[ホームページ]]
- [[プラットフォーム (Web)]]
- [[tooltip]]
- [[文脈メニュー]]
- [[焦点]]
- [[空間ナビゲーション]]
- [[エラーコンソール]]
- [[通知]]
- [[favicon]]
- [[栞]]
- [[ダウンロードマネージャー]]
- [[設定]]
- [[翻訳 (Web)]]
- [[ソース表示]]
- [[ページ情報]]
- [[ページ内検索]]
- [[全画面表示]]
- [[キオスクモード]]
- [[文字コード指定メニュー]]
- [CODE(HTMLa)@en[[[cite]]]] [[属性]]をたどる [[UI]]
]FIG]

[46] 一般に [[UI]] は ([[相互運用性]]に影響しないため) [[Webブラウザー]]に完全に任されています。
そうはいっても基本機能はどのブラウザーでも共通していますし、
同じ機能に同じ操作を割り当てるなど[[プラットフォーム]]の仕様や指針に由来する共通性もあります。
仕様書も実装例を提示したり、互換性や相互運用性のための (具体的実現方法ではなく)
機能的要件を示したりすることはあります。

[47] [[Web Security Context: User Interface Guidelines]] は、 [[TLS]]
等の表示に関する規定を行っています。

* 設定項目

[72] [[Webブラウザー]]は[DFN[Webブラウザー[[利用者]]の設定]]により一部の挙動を変化させます。

[54] 全体の設定:
[FIG(short list)[
- [[プロキシ]]
- [[DNT]]
- [[第三者クッキー]]許可
- [CODE(HTTP)@en[[[Prefer:Safe]]]]
- [[証明書データベース]]
- [[言語]]設定
]FIG]

[51] 全体の設定と[[閲覧文脈]]ごと、[[ドメイン]]ごと、[[文書]]ごとなど細かい単位での設定ができる
(ことがある) もの:

[FIG(short list)[
- [[スクリプト有効]]
- [[ワーカー]]利用の可否
- 既存[[共有ワーカー]]利用の可否
- [CODE(DOMa)@en[[[cookieEnabled]]]]
- [[利用者スタイルシート]]
-- [[色]]選択
-- [[フォント]]選択
-- [[フォントサイズ]]指定
- [[利用者スクリプト]]
- [[媒体]]の読み込み設定
-- [[volume]] / [[mute]]
--- [[タブ]]ごとに保持されているブラウザーが一般的らしい
- [[拡縮]]設定
- [[利用者の言語]]
- [[文字コード指定メニュー]]選択履歴
- [[ポップアップ抑制]]
- [[プラグイン]]許可
- [CODE(HTMLa)@en[ping]] 送信可否
- [[開発モード]]の各設定
- [[ズーム]]
- セキュリティー等の警告の非表示設定
- [CODE(HTMLe)@en[object]] の[[フォールバック]]を表示するべきか
- [[Permission]]
-- [[Geolocation API]]
-- [[getUserMedia]]
-- [[Notification]]
-- [[Fullscreen]]
-- [[Pointer Lock]]
-- [[Vibration]]
- [[ダウンロード]]の設定
- [[綴り検査]]の設定
- [[自動翻訳]]の設定
- [[prefetch]] 設定
]FIG]

]FIG]

[SEE[ [[private browsing]] ]]

* 拡張と API

[39] [[Webブラウザー]]に機能追加を行うソフトウェアやその [[API]] には、
次のものがあります。

[FIG(short list)[
- [[NPAPI]]
- [[PPAPI]]
- [[ActiveX Control]]
- [[Active Scripting]]
- [[IEブラウザ拡張]]
- [[Firefox拡張]]
- [[Chrome拡張]]
- [[Safari拡張]]
- [[Opera拡張]]
- [[Firefoxテーマ]]
- [[Personas]]
- [[WebDriver]]
- [[XPCOM]]
- [[XTF]]
- [[XBL]]
- [[XUL]]
- [[ブックマークレット]]
]FIG]

;; [[プラグイン]]や[[ヘルパーアプリケーション]]も参照。

[56] その他 [[Webブラウザー]]を機能拡張するソフトウェアには次のようなものがあります。
[FIG(short list)[
- [[Google Gears]]
- [[Chrome Frame]]
- [[Selenium]]
- [[Greasemonkey]]
]FIG]

* 埋め込み Web ブラウザー

[40] 多くの [[Webブラウザー]]は、単独の[[アプリケーション]]としてだけでなく、
他の[[アプリケーション]]に組み込む[[制御子]] ([[ウィジェット]]) として利用できる
[[API]] を有しています。

[42] 特に[[スマートフォンアプリ]]は機能の一部または全部を [[OS]] の提供する
[[Webブラウザー]]機能により実装していることがあり、[[アプリ内ブラウザー]]や
[[Webビュー]]などと呼ばれます。

;; [41] [[埋め込みWebブラウザー]]を参照。

* 自動更新

[12] 一般利用者が [[Webブラウザー]]を手動で更新せず古いものを使い続け [[Web開発]]と [[Web]]
の発展を妨げてきた反省から、また[[インターネット]]常時接続環境の一般化や
[[Webブラウザー]]開発の活発化から、 [[Webブラウザー]]には[[自動更新]]機能が組み込まれる、
あるいは [[OS]] 等の自動更新機能が利用されることが10年代中頃には当然になってきました。

;; [17] [[IE]] と古い[[スマートフォン]]を除けば、もはや最新版以外の古い版の
[[Webブラウザー]]を [[Web開発]]において意識することはなくなりつつあります。

[38] [[セキュリティー]]、互換性などの理由で次のデータは定期的に更新する必要があり、
[[Webブラウザー]]の更新により、またはそれとは別の方法で [[Webブラウザー]]開発元等により配布される最新データに更新されるようになっています。

[FIG(short list)[
- [[TLSルート証明書]]
- [[Public Suffix List]]
- [[IDN-enabled TLDs]]
- [[HSTS Preload]]
- [[PKP preload list]]
- [[CV一覧]] ([[IE]])
- [[Chrome CRLSet]]
- [[OneCRL]]
- [[TLS]] の互換性リスト
- [[Browser JavaScript]] ([[Opera]])
- [[Safe Browsing]]
- [[プラグイン]]一覧
- [[ロケールの更新]]関係
-- [[暦]]のデータ
-- [[時間帯]]のデータ 
-- など
- [CODE[localhost]] アクセス許可
- [[広告ブロック]]設定
- [[ブラウザー拡張]]の禁止リスト
- 各[[ブラウザー拡張]]の更新
- 各[[ブラウザー拡張]]の参照するデータの更新
- [CODE[User-Agent:]] 互換モード適用対象
- [[Origin Trial]] 適用対象

]FIG]

[73] [[Webブラウザー機能のためのfetch]]も参照。

[74] [CITE@en[GitHub - brave/adblock-lists: Maintains adblock lists that Brave uses]], [TIME[2023-07-05T07:58:10.000Z]] <https://github.com/brave/adblock-lists>

* 開発元への報告システム

[63] 現代の[[Webブラウザー]]には、 ([[利用者]]の承認がある時)
[[Webブラウザー]]の利用状況や不具合の発生状況を開発者に報告する仕組みが実装されています。

[64] [[Webブラウザー]]の種別や開発版か否かの違い、設定などにも依存しますが、
次のような仕組みがあります。
[FIG(list)[
- [65] 問題がある [[Webページ]]に遭遇した時に、[[利用者]]が手動で報告する機能。
表示中の [[URL]] や[[画面写真]]、[[利用者]]の報告文などが送信されます。
- [66] [[Webブラウザー]]が[[クラッシュ]]した時に、
[[メモリー]]内容の一部を報告する機能。
- [67] [[use counter]]
]FIG]

* その他

[59] 
[FIG(short list)[
- [[推奨ブラウザー]]
]FIG]

* 歴史

[55] [[文書]]を[[利用者]]に提示することが主たる機能である[[利用者エージェント]]のこと。 Browser。閲覧ソフトウェア。
([[ISO‐HTML]] <http://purl.org/NET/ISO+IEC.15445/15445.html#DEFS> 4.1 参照。)

[48] [[ブラウザー戦争]]

[49] [[フルブラウザー]]

* メモ

[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/>

[FIG(amazon)[
Web ブラウザー
]FIG]

[45] [CITE[Network Stack - The Chromium Projects]]
([TIME[2015-08-28 12:41:44 +09:00]] 版)
<https://www.chromium.org/developers/design-documents/network-stack>





[61] [CITE@en[Be clearer on which user agents the API applies to]]
([[annevk]]著, [TIME[2018-04-25 21:05:37 +09:00]])
<https://github.com/whatwg/encoding/commit/e72995345427463fb81ec5811a4404d591b49296>

[69] [CITE@en[Non-browser versus JavaScript · Issue #87 · whatwg/encoding]]
([TIME[2019-02-18 12:04:32 +09:00]])
<https://github.com/whatwg/encoding/issues/87>

[70] [CITE@en[Be clearer on which user agents the API applies to by annevk · Pull Request #136 · whatwg/encoding]]
([TIME[2019-02-18 12:06:36 +09:00]])
<https://github.com/whatwg/encoding/pull/136>

[75] [CITE[null]], [TIME[2023-08-14T12:01:50.000Z]] <https://pib.gov.in/PressReleaseIframePage.aspx?PRID=1947243>

[76] [CITE@ja[インド政府、インド国産ウェブブラウザー開発コンテスト | スラド IT]], [TIME[2023-08-14T12:02:08.000Z]] <https://it.srad.jp/story/23/08/13/0237232/>

[77] 
>>75 [[Webブラウザー]]開発もいいけど[[Web制作]]スキルも上がるといいですね。 (まあこれは日本政府・日本企業もボロボロだからなあ。)

[78] [CITE@ja[この世に存在するすべてのブラウザを知 り尽くす]], [TIME[2024-08-18T14:28:02.000Z]] <https://groups.google.com/g/japan.www.browser/c/J8cy6jbrSwY/m/tffylHW-4zsJ>


[79] [CITE[BrowserWatch - Browser Blvd.]], [TIME[2024-08-18T14:39:46.000Z]], [TIME[1997-12-10T07:53:57.841Z]] <https://web.archive.org/web/19971210075351/http://browserwatch.internet.com/browsers/browsers-full.html>


[81] あの頃の IE - いろんなTridentベースのタブブラウザーや Mozilla - Opera - NetFront の構図が今や Chrome - いろんなBlinkベースのブラウザー - Firefox - WebKit に入れ替わって何だか雰囲気が似てきてるんじゃない、って話をしました [TIME[2025-06-24T14:51:06.026Z]]

[82] でもあの頃の Mozilla や Opera は新技術の牽引役だったのに、今はそういうのがいない感なんですよな [TIME[2025-06-24T14:52:30.269Z]]