読者です 読者をやめる 読者になる 読者になる

ふろしき.js

Web + Mobile + UX + Performance Tech

元W3Cの中の人と、エンタープライズのビジネスチャンスについて語った話

変化を好まないSIですが、HTML5が開発方法に変化することを求めている。昨年、私はメディアやカンファレンスなど様々な場所で、その意義について発信してきましたが、「HTML5を使えば"今まで以上"のことができるのだろう」「それなら、あまり関係ない話なの…

Chrome for Business - 企業向けブラウザとしてのChromeの機能、まとめ

Google Chromeは、どちらかと言えばコンシューマー向けブラウザという印象が強いでしょう。実際にそれを裏付けるデータがあります。「StatCounter GlobalStats」の世界ブラウザシェアの内容を結果を確認すると、以下の結果が得られます。 ※ 青がInternet Exp…

Compat Inspector - ソースコードからIE独自機能を機械的に検出しWeb標準へ置き換えさせる方法

古いWebコンテンツではIE独自の機能を利用しないことには、リッチな機能を盛り込むことが実質的に不可能という状況でした。しかし、IE9以上からはWeb標準への準拠が高く、Microsoft側でも、IE独自機能に依存しないWeb標準へ準拠したコンテンツ作りを推奨して…

Windows XPアップグレード時のレガシーWebシステム維持方法まとめ

12年強もの長い期間に渡り利用されたWindows XPも、2014年4月9日をもって延長サポートを終了しEOLです。しかし世間では依然として、騒ぎが落ち着かないようですね。アップグレード問題は、本ブログでもかなり取り扱ってきたネタですが、もう十分に情報が揃っ…

Webアプリのパフォーマンス改善をWeb標準で行う方法、まとめ

「HTML5 Advent Calendar 2013」の24日目の記事です。Webアプリのパフォーマンス改善と言えば、JavaScriptやDOMアクセスなど、既存の技術ベースな改善手法を想像する方も多いでしょう。最近では、こうした改善のあり方を、別の視点からもう少し広げようとい…

無料でIEのマルチバージョンテスト「Modern.IE」開発での利用時の注意点

Microsoftは、6以降の全てのIEの動作をテストできる手段として、「Modern.IE」というサービスを提供しています。タイトルでは無料と言っていますが、実際には一部のサービスのみが無料となっています。本来なら有償のサービスを売り込みたいところなのでしょ…

Firefox向けWebシステム開発でできること・できないこと

Windows 7時代のWebシステム開発は混沌としています。IE8を標準ブラウザとしてサポートしてしまったユーザ企業は、IEがシステムのライフサイクルをカバーできるだけのサポート期間を確保できなくなるため、+αの対策無くして開発を行うことができません。 (※…

Windows 7世代からWebシステム開発指針を変えなくてはいけない理由

Windows 7時代のWebシステム開発は、IEの大幅な設計指針の変更に伴い、開発指針を従来の「バージョン依存型」から「機能/動作検出型」へ変更する必要が生じています。本記事では、その必要性について、IEの過去の歴史やロードマップ、また従来の開発方式を維…

IEのバージョンごとの機能の違い、選定の目安

私はIEの中の人ではないので、IE開発者がどういう考えを持っているかはわかりません。しかし、断言して言えることがあります。最近のIEは各バージョンで明らかに意図したテーマを持ち、リリースされています。各バージョンのテーマを、運用するシステムの目…

HTML5世代のJavaScriptからマウスイベントの扱い方、Pointer Events

この記事は古くなっています。こちらを参照して下さい。これまでマウスイベントの扱いは、以下のような記述方法でした。 var elem = document.getElementById("hoge"); if ( elem.addEventListener ) { // IE9以上/Firefox/Chrome elem.addEventListener("mo…

【企業システムの2020年問題】IE8以下向けのWebシステムのEOLは、2020年より後になってはいけない

バージョン8までのIEは、Microsoftが暗に独自性が高いことを認めているブラウザです。同じHTML/CSS/JSであっても、バージョンごとに異なる仕様として動作することがあります。このため、上位のバージョンのIEで動作させるには「ドキュメントモード」いう機能…

Windows XPのアップグレード時に、IE5向けWebシステムが無いことを前提に移行してはいけない

IEのドキュメントモード機能が存在しなかったIE5〜7で、どのバージョンでも同じ仕様を持つプラットフォームを得るには、IE5の動作を再現させる「Quirksモード」を有効にするしか手段がありませんでした。当時のIEは相互運用性が低く、バージョンごとの動作が…

XHTML1.0の場合、IE6からIE8〜10への移行時に表示が乱れることがある

XHTML1.0のDOCTYPE宣言にはいくつか種類があり、IE7以上では常に最新のレンダリングエンジンである「標準モード」として動作します。しかし、IE6は一部の宣言方法で一番古いレンダリングエンジンである「Quirksモード」として動作してしまいます。 (※参考 : …

IE11リリースによる本当の危機、その後のSIのやるべきこと

私が以前執筆した記事「意外と知られていない、IE11リリースによる本当の危機」がかなり好評でしたので、執筆者としてもう少しだけ言葉を残してみようと思います。 なぜQuirks?と考えたことはあるだろうか Webシステムでは、わざとQuirksを使うというバッド…

IE11を裏ワザ的なやり方でDOCTYPEスイッチを有効化する方法

IE11はDOCTYPEスイッチが機能しません。これは恐らく、ドキュメントモードが非推奨へ変わったからでしょう。 (※参考 : ドキュメント モードの非推奨 - Microsoft )しかしIEはまだ、Quirksモードを内部的に残しています。今までとは異なる手段にはなりますが…

意外と知られていない、IE11リリースによる本当の危機

Internet Explorerはエンタープライズでの利用が想定されるため、Microsoft製品で広く適用されているサポート ライフサイクル ポリシーを確認すると、最低でも10年のサポートが受けられると考えている人も多いでしょう。IE8も9も10も、みんなそうなると信じ…

IEの持つ互換性機能の全て - DOCTYPEスイッチ/X-UA-Compatible/互換表示

IEはかつて、独自の機能実装により安定かつ高度な機能を持ったプラットフォームを実現しました。特に、IE6のポテンシャルの高さは、Web技術発展へ大きく貢献しています。しかし同時に、他のブラウザとは異なる独立した挙動をしたり、バージョンごとに機能面…

イントラネット内で互換表示を有効にする方法(IE8/IE9/IE10/IE11)

IEの8〜11では、イントラネットゾーンで互換表示(IE7との互換動作)を有効にする機能を持ちます。イントラネットとは、企業システムをWebベース(Internet Explorerの利用)で構築した場合に、企業内と企業外のネットワークで別のポリシーを適用するために作ら…

互換表示機能をWindowsレジストリを利用して無効化する方法(IE8/IE9/IE10/IE11)

IEには「互換表示ボタン」や「互換表示一覧(リスト)」を通じて、サイトのドメインごとに互換表示機能の有効/無効を切り替える機能を持っています。企業システムでの用途の場合、この機能をIEの利用者側で制御して欲しくないという要望もあるでしょう。この場…

IE11のX-UA-Compatibleの使い方/動作仕様

IE11では、X-UA-Compatibleという制御パラメータを利用し、過去のWebブラウザの機能をエミュレートさせることができます。本記事では、X-UA-Compatibleの利用方法について解説します。 動作の仕様 設定方法 HTMLドキュメント内にX-UA-Compatibleを追加する A…

IE10のX-UA-Compatibleの使い方/動作仕様

IE10では、X-UA-Compatibleという制御パラメータを利用し、過去のWebブラウザの機能をエミュレートさせることができます。本記事では、X-UA-Compatibleの利用方法について解説します。 動作の仕様 設定方法 HTMLドキュメント内にX-UA-Compatibleを追加する A…

IE9のX-UA-Compatibleの使い方/動作仕様

IE9では、X-UA-Compatibleという制御パラメータを利用し、過去のWebブラウザの機能をエミュレートさせることができます。本記事では、X-UA-Compatibleの利用方法について解説します。 動作の仕様 設定方法 HTMLドキュメント内にX-UA-Compatibleを追加する Ap…

IE8のX-UA-Compatibleの使い方/動作仕様

IE8では、X-UA-Compatibleという制御パラメータを利用し、過去のWebブラウザの機能をエミュレートさせることができます。本記事では、X-UA-Compatibleの利用方法について解説します。 動作の仕様 設定方法 HTMLドキュメント内にX-UA-Compatibleを追加する Ap…

IE11のEmulateIE10(X-UA-Compatible)でDOCTYPEスイッチに不具合がある(→仕様でした)

(※ 本ドキュメントは古い情報です。正確な仕様は、こちらを参照して下さい。)IE10までは、「X-UA-Compatible」に対して、「IE=EmulateIE」で指定された対象バージョンのドキュメントモードでは、DOCTYPEスイッチの条件に従いQuirksモードへの切り替えを行っ…

IE11の互換表示リスト(互換表示一覧)の使い方/動作仕様

IE11には、正常な動作が行えない古いWebコンテンツを利用できるようにするために、「互換表示リスト(互換表示一覧)」という機能が提供されています。本記事では、「互換表示リスト(互換表示一覧)」の動作仕様について説明します。 互換表示設定から追加 リス…

IE10の互換表示リスト(互換表示一覧)の使い方/動作仕様

IE10には、正常な動作が行えない古いWebコンテンツを利用できるようにするために、「互換表示リスト(互換表示一覧)」という機能が提供されています。本記事では、「互換表示リスト(互換表示一覧)」の動作仕様について説明します。 設定方法1 - 互換表示ボタ…

IE9の互換表示リスト(互換表示一覧)の使い方/動作仕様

IE9には、正常な動作が行えない古いWebコンテンツを利用できるようにするために、「互換表示リスト(互換表示一覧)」という機能が提供されています。本記事では、「互換表示リスト(互換表示一覧)」の動作仕様について説明します。 設定方法1 - 互換表示ボタン…

IE8の互換表示リスト(互換表示一覧)の使い方/動作仕様

IE8には、正常な動作が行えない古いWebコンテンツを利用できるようにするために、「互換表示リスト(互換表示一覧)」という機能が提供されています。本記事では、「互換表示リスト(互換表示一覧)」の動作仕様について説明します。 設定方法1 - 互換表示ボタン…

IE10のDOCTYPEスイッチによるStandard/Quirksモードの切り替え一覧表

IE10には、古いIEの動作とHTML5との相互運用を可能としたレンダリングエンジンとして動作するQuirksモードと、最新のレンダリングエンジンとして動作するStandardモードがあります。HTMLドキュメントの一番上でのDOCTYPE宣言を行うことにより切り替えを行い…

IE9のDOCTYPEスイッチによるStandard/Quirksモードの切り替え一覧表

IE9には、IE5の動作を再現させるQuirksモードと、最新のレンダリングエンジンとして動作するStandardモードがあります。HTMLドキュメントの一番上でのDOCTYPE宣言を行うことにより切り替えを行います。IE9の場合、「X-UA-Compatibe」へ「IE=EmulateIE」とい…

IE8のDOCTYPEスイッチによるStandard/Quirksモードの切り替え一覧表

IE8には、IE5の動作を再現させるQuirksモードと、最新のレンダリングエンジンとして動作するStandardモードがあります。HTMLドキュメントの一番上でのDOCTYPE宣言を行うことにより切り替えを行います。IE8の場合、「X-UA-Compatibe」へ「IE=EmulateIE」とい…

IE7のDOCTYPEスイッチによるStandard/Quirksモードの切り替え一覧表

IE7には、IE5の動作を再現させるQuirksモードと、最新のレンダリングエンジンとして動作するStandardモードがあります。HTMLドキュメントの一番上でのDOCTYPE宣言を行うことにより切り替えを行います。IE7からは、IE6まで問題になっていたXHTML1.0のDOCTYPE…

IE6のDOCTYPEスイッチによるStandard/Quirksモードの切り替え一覧表

IE6には、IE5の動作を再現させるQuirksモードと、最新のレンダリングエンジンとして動作するStandardモードがあります。HTMLドキュメントの一番上でのDOCTYPE宣言を行うことにより切り替えを行います。IE6の時代、XHTML1.0は存在はしたものの、DOCTYPEの判定…

IE6〜9とIE10とでQuirksモードの動作が違う、どうすれば解決できるか?

古いWebコンテンツを動かすため、IE6からQuirksモードという機能が追加されました。QuirksモードはIE5の動作をエミュレートすることができる機能です。しかし、IE10からQuirksモードでもHTML5の機能が動作するよう仕様に修正が加えられたため、動作に違いが…

IE11には互換表示ボタンが無い、どうすれば解決できるか?

IE8から10では、「互換表示ボタン」という機能がありました。古いWebコンテンツは、IEの利用者が互換表示をオンにすることでIE7/IE5の動作をシミュレートさせ、Webページを表示できるようにしていました。しかし、IE11では互換表示で利用するドキュメントモ…

古いWebシステムの維持は「互換表示」から「改修」へ

近年、HTML5というキーワードが世の中を騒がせています。それと同時に、Webブラウザやその上で動作するインタラクティブなコンテンツは、プラグインからWeb標準へその手段を徐々に移行しつつあります。しかし一方で、利用者側のIEのバージョンがなかなか上が…

Web開発のガイドライン・ツール集

★ Windows 7のWebシステム開発は、IEの方針転換により変化が求められる Windows XP時代に主流であった「バージョン依存型」は、非推奨となりました。IEはかつて、様々なバージョン特化の作り込みを支援する機能を提供してきましたが、バージョンアップを繰り…

相互運用性対策は「ブラウザ/デバイス検出」から「機能/動作検出」へ

これまでWebシステム/サイトは、Webブラウザの種類でビューを切り替える「ブラウザ検出」という考え方が一般的でした。また、デスクトップ型かスマートデバイス型かをサーバで判断し、ビューを返す「デバイス検出」は、今もなお主流かと思います。しかし最近…

IE11ではDOCTYPE宣言がチェックされない、どうすれば解決できるか?

IE11から、ドキュメントモードは非推奨というステータスに変わっています。 (※参考 : ドキュメント モードの非推奨 - Microsoft)IEはこれまで、DOCTYPEを確認してQuirksモード(IE5+αなレンダリングエンジン)とEdgeモード(最新のレンダリングエンジン)を切り…

エンタープライズでも広がる、フルOSSでHTML5-RIAなWeb開発

本稿は、2013年11月16日開催、オープンソースカンファレンス2013 福岡の講演資料の説明です。以下のスライドを使って説明したものを、補足しながら文章ベースに書き起こしました。 HTML5で脅かされたRIA HTML5の登場で、Webブラウザは単なるドキュメント表示…

オープンソースのJavaScriptライブラリでベンダサポートを受ける方法

サーバサイドのOSS開発ではRedHat社のようなOSSサポートベンダがいますが、フロントエンドはイマイチ充実していない印象があるようです。エンタープライズでの活用の場合、近年のHTML5ベースなRIA開発を行う上でベンダサポートは切実な問題になるでしょう。…

IE11のユーザエージェント問題 - IT管理者側でできる対策(IEAK/Active Directory/modern.IEの活用)

古いWebシステムはIEに依存した処理を多く含む傾向にあり、企業内の標準ブラウザをアップデートする際に、IE11から変更されたユーザエージェントの書式仕様が問題となり正常に動作できない場合があります。しかし、これを理由にしてアップデートを先延ばしに…

IE11のユーザエージェント問題 - 運用者側でできる対策(Apache HTTP Server/IISの設定変更)

運用しているWebサイト/システムがIE11からのアクセスへ対応できない場合、運用者側としてはHTTPヘッダを利用した対策を行うことができます。対策可能な範囲としては、以下2つが挙げられます。 アクセス元のWebブラウザの互換性モードを制御する アプリケー…

Internet Explorer 11のユーザエージェント問題 - 対策方法の全て

Internet Explorer11へアップデートされてから1ヶ月。多くのWebアプリが動作不良を起こし、混乱が生じているようです。IEは11から、「User Agent スニッフィング」と呼ばれる手段で、Webブラウザに依存した作り込みが行われることを防ぐため大胆な仕様変更を…

IE11のユーザエージェント問題 - 開発者側でできる対策 (判定方法の変更/互換性モードの利用)

既存のWebサイト・システムがIE11で動作しない場合、ユーザエージェントの観点では以下の何れかで対策が可能です。 navigator.userAgent文字列からの判定 HTMLドキュメント内から、互換性モードの操作 上記の対策はどちらも、"課題"があります。近年のWeb開…

IE11のユーザエージェント問題 - ユーザ側でできる解決策 (互換表示機能の利用)

IE11でのみWebサイト・システムへアクセスできない場合、以下の問題が考えられます。 サーバ側でIE11からのアクセスを拒否している。 IE11のレンダリングエンジンに問題があり利用できない。 以下の対策で、改善される可能性があります。 1. サーバ側でIE11…

「HTML5時代のWebアプリとJavaが融合するための3つの議論」もう少し細かく説明

JJUG CCC 2013、お疲れ様でした。拙い講演にも関わらず、多くの方に聴講頂き大変感謝しております。今回、HTML5時代に融合しようと各ベンダ製品が実装しつつある機能に焦点を当て、Javaがどういう道に進もうとしているのかというテーマで講演させて頂きまし…

「Visual Studio 2013 は何が違うのか? HTML5時代に整合したWeb開発環境」もう少し細かく説明

10月31日、Web技術者イベント「Halloween Web Night」にて登壇させて頂きました。その際、Visual Studio 2013に含まれている新機能について、15分間でできる範囲での紹介をさせて頂きました。時間が十分でなく説明ができていないところもあったため、少しば…

現実指向コーディング 〜Web標準やブラウザ仕様に負けない、現実的な方法を模索する〜

★ 最新の機能が使いたいんだけど・・・ HTML5の登場で、既存の機能にも置き換えが進んでいます。とはいえ、古いIEがシェアを得てしまっている現状を鑑みると、いきなり新しいWeb標準を使うわけにもいきません。古いIEのために、Shim/Polyfillと呼ばれるライ…

OSSな開発・制作ツールを使いこなすための一夜漬けノート

やたらといっぱいあって、覚えるのが面倒なWebの開発/制作ツールたち。やつらを、いかにして最短ルートでマスターするかについて考え、記事にしてみます。コンテンツはこれから、、増えるはずです。 ★ a. OSSの開発ツール オープンソースのJavaScriptライブ…