SlideShare a Scribd company logo
HTML5, きちんと。
masataka yakura
こんばんは。
矢倉といいます。
http://www.mitsue.co.jp/
Web 標準 Blog
http://standards.mitsue.co.jp/
Opera
Web標準カリキュラム
http://dev.opera.com/articles/view/801
Web Designing
2009年11月号
(10月17日発売)
「HTML5 & CSS3 で
 Web は変わるのか?」
監修しました →
(11月21日発売)
「プロクリエイターの作例に学ぶ
 XHTML+CSS 達人テクニック」
本日のテーマ:HTML5
まだまだ情報が少ない。
背景や目的についても
ある程度は知ってて欲しい。
HTML5とは?    HTML5のセクション
XHTMLはどうなる? 勧告はいつごろ?
もうひとつの目的    どう使っていくか
HTML5の新機能
HTML5 とは?
「Web プラットフォーム」
その中核をなす仕様。
HTML4 や XHTML1 は
「文書」の作成が目的だった。
HTML5 では新たに
「アプリケーション」が加わる。
これまでのあゆみ
1998 年 2 月
XML 1.0 が勧告。
W3C は XML への移行を計画。
HTML は段階を経て
XML に移行するプランに。
XHTML 1.0 ― HTML4 を XML 化
XHTML 1.1 ― 機能を細分化
XHTML 2.0 ― 新しく作り直し
2002 年~
ブログが普及しだす。
「XHTML+CSS」が広まる。
ほとんどが text/html
XMLとして使われなかった。
HTML5, きちんと。
Web アプリが台頭し
今の HTML では機能不足に。
新しい機能の実現に
XML の普及を待つ必要がある?
2004 年 6 月
W3C のワークショップにて
ベンダー「HTML の拡張を!」
W3C「うちではやりませんが
   お好きにどうぞ。」
Apple, Mozilla, Opera
WHATWG を立ち上げる。
ベンダーによって
HTML の拡張が始められた。
ベンダーが関わった仕様は
開発者から評価を得ていく。
2006 年 10 月
Tim Berners-Lee のブログにて
It is necessary to evolve 
HTML incrementally. The 
attempt to get the world to 
switch to XML […] all at once 
didn’t work.
― Tim Berners‐Lee: “Reinventing HTML”
「XML への移行は
 いっせいには進まなかった。」
2007 年 3 月
新 HTML WG 設立。
WHATWG と協力して
HTML5 の策定をスタート。
2009 年 5 月
Google I/O で大プッシュ。
少しずつ実装も進んでいる。
XHTML はどうなる?
XHTML2 WG が
2009 年末で活動終了と発表。
XHTML 2.0 は終了。
でも、XHTML はなくならない。
HTML5 は XML として
扱うことも可能(XHTML5)
HTML5 の HTML 構文でも
「XMLっぽく」書けるように。
<img>   ← 今までの HTML
<img /> ← こっちも OK に!
※ 混在もできます。
というわけで、ご心配なく。
Misunderstanding Markup
http://standards.mitsue.co.jp/resources/mm_comic/
もうひとつの目的
「機能の拡張」もあるけれど
「互換性」も重要なテーマ。
1. ブラウザーの互換性
HTML5, きちんと。
Web アプリの開発には
JavaScript や DOM が不可欠。
HTML5, きちんと。
クロスブラウザー対応は厄介。
互換性に問題がある。
非互換を生む 2 つの「ない」
実装 がない。
→ 対応状況が異なる
仕様 がない。
→ 実装に違いが生まれる
実装はベンダー依存だが
仕様は定義して対応できる。
HTML5 では
詳細な処理規則を定義。
2. 既存の実装との互換性
今のブラウザーやサイトとも
互換性をある程度は保つ。
大きな変更はできないが
今の環境を捨てずに済む。
互換性を持つことで
Webを段階的に進化させられる。
HTML5 の新機能
APIの追加や
マークアップの拡張など。
<canvas>
スクリプトから画像を扱う。
応用はさまざま。
Bespin
https://bespin.mozilla.com/
<canvas> で作られたエディタ。
HTML5, きちんと。
Chrome Experiments
http://www.chromeexperiments.com/
最新技術のショーケース。
HTML5, きちんと。
<video> & <audio>
<img> みたく、簡単に
動画・音声を扱えるように。
<video src=“intro_html5.vid”>
   <a …> ダウンロード </a>
</video>
HTML5, きちんと。
プラグインじゃないので
CSS や SVG と組み合わせが可能。
マークアップ
マークアップにも
数多くの拡張や変更が。
<canvas> <audio> <video> <header>
<footer> <section> <article> <nav>
<aside> <hgroup> <figure> <details>
<datalist> <meter> <progress>
<time> <mark> <ruby> etc...
よく使われる class/id を
要素として採用する。
<div id=“header”>
→ <header>

<div class=“section”>
→ <section>
定型句はよりシンプルに。
<!DOCTYPE html>
<meta charset=“UTF-8”>
古いブラウザーでも機能する。
フォームの拡張も。
<input type=text ...>
<input type=password ...>
<input   type=email ...>
<input   type=range ...>
<input   type=color ...>
<input   type=datetime ...>
...
名   前 (必須):

メール (必須):
<input type=“text” ... required>
<input type=“email” ... required>
サイト内検索:   キーワードを入力
<input type=“search”
   placeholder=“キーワードを入力”>
HTML5 のセクション
文書構造をより明示的に表せる。
<section>
章や節などの、ひとまとまり
<section>
 <h3> section 要素 </h3>
 <p> 章や節などを表す。</p>
 ...
</section>

<section>
 <h3> nav 要素 </h3>
 <p> 主要なナビゲーションを表す。</p>
 ...
</section>
<section>
 <h3> article 要素 </h3>
 <p> 自己完結するセクションを表す。</p>

 <section>
  <h4> サンプル </h4>
  ...
 </section>

</section>
<nav>
主要なナビゲーション
<nav class=“global”>
 <ul>
  <li> <a ...> ホーム </a>
  <li> <a ...> お知らせ </a>
  <li> <a ...> HTML5 Niteって? </a>
  <li> <a ...> これまでのNite </a>
  <li> <a ...> お問い合わせ </a>
 </ul>
</nav>
UA が <nav> を利用することで
アクセシビリティも高まる?
<article>
記事など、自己完結するセクション
<article class=“entry” id=“vol40”>

 <h2> CSS Nite in Ginza, Vol. 40 </h2>
 <p> 4周年記念となるVol.40では… </p>

 <section>
    <h3> 事前登録について </h3>
    ...
 </section>
 ...
</article>
フィードの <item> や
<entry> などをイメージ。
<aside>
補足的な情報や、サイドバー
<section>
 <h2> nav 要素 </h2>
 <p> 主要なナビゲーションを表します。 </p>

 <aside>
  <p> 海外では「navi」よりも
      「nav」の方が多いみたいです。</p>
 </aside>

</section>
<header> ... </header>
<div class=wrap>
 <div class=main>
   ...
 </div>

 <aside class=sidebar>
   ...
 </aside>
</div>
<footer> ... </footer>
セクションと見出しから
アウトラインができる。
<article>
   <h1> HTML5 のセクション </h1>
   <nav> ... </nav>
   ...
   <section>
      <h2> nav 要素 </h2>
      ...
      <aside>
         <h3>「navi」ではなく「nav」</h3>
         ...
      </aside>
      ...
   </section>
...
HTML5 のセクション
 (見出しなしの目次)
 section 要素
 nav 要素
  「navi」ではなく「nav」
 article 要素
 aside 要素
見出しだけでも
アウトラインはできる。
<h1> HTML5 のセクション </h1>

<h2> section 要素 </h2>

<h2> nav 要素 </h2>

<h3>「navi」ではなく「nav」</h3>

<h2> article 要素 </h2>

...
HTML5 のセクション
 section 要素
 nav 要素
  「navi」ではなく「nav」
 article 要素
 aside 要素
注意!
使い方を間違えると
アウトラインが壊れてしまう。
特に <section> は気をつけて。
<article class=“entry”>
 <header>
   <h2> タイトル </h2>
 </header>

 <section class=“body”>
  <p> 本文 </p>
  <p> テキストテキスト </p>
 </section>

 <footer> ... </footer>
</article>
<header id=logo>
 <section>
   <h1> <img src=logo ...> </h1>
 </section>
</header>
<section id=wrapper>
 <section id=main>
    <article>
     <section>
       <header> ... </header>
       ...
     </section>
    </article>
 </section>
 ...
</section>
セクションは意味的なもの。
アウトラインを意識して。
レイアウト目的なら <div> で。
勧告はいつごろ?
HTML5, きちんと。
「2010 年 9 月」とある。
でも、むりです。
「勧告」とは?
仕様がすべて実装され
すぐに使える状態。
実装が終わるのは?
「2022 年」と……
「使えないじゃん!」
そんなことはないです。
たとえば、CSS 2.1 は
まだ「勧告候補」です。
勧告されていませんが
広く使われてます。
実装されている機能から
使っていけばいい。
実装の本格的なスタートは
「勧告候補」になった時。
2012 年あたりになる?
実装状況を知るには?
1. 開発者向けサイト
Mozilla Developer Center
https://developer.mozilla.org/ja
Safari Dev Center
http://developer.apple.com/safari/
2. 仕様書のステータス表示
HTML5, きちんと。
HTML5, きちんと。
どう使っていくか
「実装されてる機能から使え」
とは言ったものの……
HTML5, きちんと。
HTML5, きちんと。
対応しないブラウザーは
どう対処すればよいのか?
1. JavaScript で対処
ExplorerCanvas
http://excanvas.sourceforge.net/
IE に <canvas> を。
Modernizr
http://www.modernizr.com/
対応状況をチェックする。
classもつけてくれたりする。
2. 対応度合いにあわせて利用
最低限なものは、全ての環境で。
できる子には、高機能なものを。
Progressive Enhancement
って言われてるやつです。
placeholder 属性
無くても不都合はない。
難しいことは確か。
HTML5 や CSS3 は
勧告までとても時間がかかる。
今までと異なる考え方で
取り組んでいく必要がある。
今は何をすれば?
実装も出てきたけれど
仕様はまだまだ策定中。
「<article> と <section> を
 区別する必要はあるのか。」
「<section> の誤用が多い。
 いっそのこと削除しては?」
仕様がドラスティックに
変更される可能性も……
使う際には、リスクの認識を。
おわりに
「情報が少ない」といいました。
みんなが使っていく仕様
情報はみんなで共有したい。
調べたことをまとめて
情報を増やしていって欲しい。
ありがとうございました。
Contact:
yakura-masataka@mitsue.co.jp

More Related Content

PDF
大規模サイトにおける本当は怖いCSSの話
PDF
ドメイン駆動設計入門
PPTX
ドメイン駆動設計とマイクロサービス
PPTX
A presentation on front end development
PPTX
Unityで使える C# 6.0~と .NET 4.6
PDF
ドメイン駆動設計 基本を理解する
PDF
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
PDF
REST API のコツ
大規模サイトにおける本当は怖いCSSの話
ドメイン駆動設計入門
ドメイン駆動設計とマイクロサービス
A presentation on front end development
Unityで使える C# 6.0~と .NET 4.6
ドメイン駆動設計 基本を理解する
JSUG 20141127 「Spring Bootを用いたドメイン駆動設計」
REST API のコツ

What's hot (20)

PDF
ソフトウェア開発のやり方の改善
PDF
PHPでWebSocketを実装してみてわかったこと
PDF
ドメイン駆動設計のためのオブジェクト指向入門
PDF
Gephi: Exploratory networks analysis software
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
PPT
How Cascading Style Sheets (CSS) Works
PDF
TDD のこころ @ OSH2014
PDF
Power Appsのレスポンシブレイアウトにトライしよう
ODP
SPAのルーティングの話
PDF
Rest ful api設計入門
PDF
DOMinando JavaScript
PDF
ドメイン駆動設計 失敗したことと成功したこと
PDF
GitHub Copilotとともに次の開発体験へ
PDF
初めてでも大丈夫!SharePoint 開発の第一歩
PDF
デキるプログラマだけが知っているコードレビュー7つの秘訣
PPTX
Introduction to HTML+CSS+Javascript.pptx
PPTX
Bootstrap grids
PDF
Hacking Jenkins
PDF
인프런 - 스타트업 인프랩 시작 사례
PDF
文字コードに起因する脆弱性とその対策(増補版)
ソフトウェア開発のやり方の改善
PHPでWebSocketを実装してみてわかったこと
ドメイン駆動設計のためのオブジェクト指向入門
Gephi: Exploratory networks analysis software
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
How Cascading Style Sheets (CSS) Works
TDD のこころ @ OSH2014
Power Appsのレスポンシブレイアウトにトライしよう
SPAのルーティングの話
Rest ful api設計入門
DOMinando JavaScript
ドメイン駆動設計 失敗したことと成功したこと
GitHub Copilotとともに次の開発体験へ
初めてでも大丈夫!SharePoint 開発の第一歩
デキるプログラマだけが知っているコードレビュー7つの秘訣
Introduction to HTML+CSS+Javascript.pptx
Bootstrap grids
Hacking Jenkins
인프런 - 스타트업 인프랩 시작 사례
文字コードに起因する脆弱性とその対策(増補版)
Ad

Viewers also liked (18)

PDF
今からハジメるHTML5マークアップ
PDF
HTML5のCanvas入門 - Img画像を編集してみよう -
PDF
HTML5 入門
PDF
【14-E-5】現場で役立つUX ~エンタープライズUXの現在とこれから~
PDF
Developers Summit 2013【14-E-4】デザインをするときにデザイナーが考えること〜デザイナーの頭の中〜
PDF
Sass 超入門
PDF
データビジュアライゼーションはなぜ「コストが高い」と言われるのか
PDF
細かすぎて伝わらないD3 ver.4の話
PDF
今必要なCSSアーキテクチャ
PDF
⑯jQueryをおぼえよう!その2
PDF
⑮jQueryをおぼえよう!その1
PDF
ノンプログラマーのためのjQuery入門
PDF
最強オブジェクト指向言語 JavaScript 再入門!
PDF
Webデザインのセオリーを学ぼう
KEY
ノンデザイナーのための配色理論
PDF
しょぼいプレゼンをパワポのせいにするな! by @jessedee
PPT
色彩センスのいらない配色講座
PDF
見やすいプレゼン資料の作り方 - リニューアル増量版
今からハジメるHTML5マークアップ
HTML5のCanvas入門 - Img画像を編集してみよう -
HTML5 入門
【14-E-5】現場で役立つUX ~エンタープライズUXの現在とこれから~
Developers Summit 2013【14-E-4】デザインをするときにデザイナーが考えること〜デザイナーの頭の中〜
Sass 超入門
データビジュアライゼーションはなぜ「コストが高い」と言われるのか
細かすぎて伝わらないD3 ver.4の話
今必要なCSSアーキテクチャ
⑯jQueryをおぼえよう!その2
⑮jQueryをおぼえよう!その1
ノンプログラマーのためのjQuery入門
最強オブジェクト指向言語 JavaScript 再入門!
Webデザインのセオリーを学ぼう
ノンデザイナーのための配色理論
しょぼいプレゼンをパワポのせいにするな! by @jessedee
色彩センスのいらない配色講座
見やすいプレゼン資料の作り方 - リニューアル増量版
Ad

Similar to HTML5, きちんと。 (20)

PDF
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
PDF
GDG Women DevfestW
PDF
メディア芸術基礎 II HTML5とは何か? HTML5、はじめの一歩
PDF
情報編集(Web) HTML5とは何か? HTML5、はじめの一歩
PDF
Html5でword pressテーマを作るよ!
KEY
HTML5での制作、いつから始める?
PDF
今日からはじめるHTML5 ver.2012
PDF
PDF
HTML5 in Firefox4
PDF
PDF
HTML5マークアップの心得と作法
PDF
To write a better HTML
PDF
マークアップ講座 01b HTML
PDF
HTML5を用いたセマンティックな文書作成【TechBuzz】第8回HTML5開発技術勉強会 〜先行事例紹介/交流会〜
PDF
130107html5
PDF
Concentrated HTML5 & Attractive HTML5
PDF
Web Platform -- Moving Forward!
PDF
Google Developer Day 2010 Japan: HTML5 とウェブサイトデザイン (矢倉 眞隆)
PDF
「html5 boilerplate」から考える、これからのマークアップ
KEY
Html5で変わるいろんなこと
HTML5など社内勉強会 Vol.2 - HTML5, CSS3
GDG Women DevfestW
メディア芸術基礎 II HTML5とは何か? HTML5、はじめの一歩
情報編集(Web) HTML5とは何か? HTML5、はじめの一歩
Html5でword pressテーマを作るよ!
HTML5での制作、いつから始める?
今日からはじめるHTML5 ver.2012
HTML5 in Firefox4
HTML5マークアップの心得と作法
To write a better HTML
マークアップ講座 01b HTML
HTML5を用いたセマンティックな文書作成【TechBuzz】第8回HTML5開発技術勉強会 〜先行事例紹介/交流会〜
130107html5
Concentrated HTML5 & Attractive HTML5
Web Platform -- Moving Forward!
Google Developer Day 2010 Japan: HTML5 とウェブサイトデザイン (矢倉 眞隆)
「html5 boilerplate」から考える、これからのマークアップ
Html5で変わるいろんなこと

HTML5, きちんと。