Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introduction to HTML5

N@N
March 16, 2013

Introduction to HTML5

姫路IT系勉強会 Vol.15で発表した内容です.

N@N

March 16, 2013
Tweet

More Decks by N@N

Other Decks in Technology

Transcript

  1. まずMIMEタイプの話 Content-Type: • text/html • text/css • image/jpeg • application/pdf

    URLの付いてるもの全てにあるどう表示・処理す べきかの唯一の指標。 参考:IANA | MIME Media Types (http://www.iana.org/assignments/media-types)
  2. XHTMLの話 • 要素名は小文字(ex. <html> • 空要素は閉じる(ex. <br /> • 全ての属性値は囲む(ex.

    <div width=“100”> • <html lang=“ja-JP” xml:lang=“ja-JP”> ちなみにXHTML 1.1でlang属性は廃止
  3. HTML5とは 今までのHTML • タグ付けした文書の 製作 • Webアプリケーショ ンには不向き HTML5 •

    より強固なタグ付け • Webアプリケーショ ンの開発の手助け • 便利[要出典] • わかりやすい[要出典] • 神[要出典]
  4. 新しい要素 • nav • section • header • footer •

    article • aside • video • audio • canvas
  5. nav <nav> <ul> <li><a href=""> </a></li> <li><a href=""> </a></li> </ul>

    </nav> • 主要なナビゲーショ ンに用いる • <ul id=“mainMenu”> に相当する(もちろん それ以外でも主要であ れば該当)
  6. section <article> <section> <header> </header> <div></div> </section> </article> • 汎用セクション

    • 基本的にヘッダを伴 う • div要素のが汎用なブ ロック要素に対し、 section要素は汎用な セクション
  7. header <header> <img src="" alt="" /> </header> <!-- サイトのヘッダ -->

    <section> <header></header> <!-- 記事の見出し --> <p></p> </section> • ヘッダ • 見出し • ページ全体のヘッダ でも良いし、セク ションごとの見出し でも良い
  8. footer <section> <p></p> <footer></footer> </section> <footer></footer> </body> </html> • フッタ

    • サイト全体のフッタ でも良いし、セク ションごとのフッタ でも良い
  9. article <article> <section> <header> </header> <div></div> </section> </article> • 例えば文書、ブログ

    記事、コメント欄、 もしくはサイト内で 自己完結してる項目
  10. aside <article> <aside></aside> <!-- articleと 密接な関係 --> </article> <aside></aside> <!--

    そうではない --> • 話の内容から少しそ れたもの • 印刷物の囲み記事 • 広告
  11. video <video src=""></video> <video src="“ controls> </video> <video src="" autoplay>

    </video> • 動画を再生する • controlsでインター フェース表示 • autoplayで自動再生
  12. audio <audio src=""></audio> <audio src="" controls> </audio> <audio src="" autoplay>

    </audio> • 音声を再生する • controlsでインター フェース表示 • autoplayで自動再生
  13. canvas $(function() { //var ctx = document.getElementById('sample').getContext('2d'); var ctx =

    $('#sample').get(0).getContext('2d'); ctx.beginPath(); ctx.fillStyle = 'rgba(0, 0, 0, 1)'; ctx.fillRect(10, 10, 10, 20); });
  14. HTML 4.01 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <html lang="ja-JP">

    <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta http-equiv="Content-Script-Type" content="text/javascript"> <title>Title</title> <link rel="stylesheet" href="style.css" type="text/css"> <script src=“main.js” type="text/javascript"></script> HTML5 <!DOCTYPE html> <html lang="ja-JP"> <head> <meta charset="UTF-8" /> <title>Title</title> <link rel="stylesheet" href="style.css" /> <script src=“main.js”></script>
  15. The type attribute gives the styling language. If the attribute

    is present, its value must be a valid MIME type that designates a styling language. The charset parameter must not be specified. The default value for the type attribute, which is used if the attribute is absent, is "text/css" 参考:HTML Living Standard (http://www.whatwg.org/specs/web-apps/current-work/multipage/semantics.html#the-style-element http://www.whatwg.org/specs/web-apps/current-work/multipage/scripting-1.html#the-script-element) The src attribute, if specified, gives the address of the external script resource to use. The value of the attribute must be a valid non-empty URL potentially surrounded by spaces identifying a script resource of the type given by the type attribute, if the attribute is present, or of the type "text/javascript", if the attribute is absent.
  16. HTML 4.01 <div class="header"> <img src="" alt=""> </div> <div class="article">

    <div class="section"> <div class="header"></div> <p></p> </div> </div> HTML5 <header> <img src="" alt="" /> </header> <article> <section> <header></header> <p></p> </section> </article>
  17. <!ELEMENT HTML O O (%html.content;) -- document root element -->

    <!ELEMENT DL - - (DT|DD)+ -- definition list --> <!ELEMENT DT - O (%inline;)* -- definition term --> <!ELEMENT DD - O (%flow;)* -- definition description --> <!ELEMENT IMG - O EMPTY -- Embedded image --> 参考:strict.dtd
  18. 形式 意味 A, B A, Bがこの順で A&B A, Bが順不同で +A

    子孫にAが記述可能 -A 子孫にAが記述不可
  19. <!ELEMENT HTML O O (%html.content;) -- document root element -->

    <!ENTITY % html.content "HEAD, BODY"> <!ELEMENT HEAD O O (%head.content;) +(%head.misc;) -- document head --> <!ENTITY % head.misc "SCRIPT|STYLE|META|LINK|OBJECT“ -- repeatable head elements --> <!ELEMENT BODY O O (%block;|SCRIPT)+ +(INS|DEL) -- document body -->
  20. <!DOCTYPE html> <html lang="ja-JP"> <head> <meta charset="UTF-8" /> <title>Title</title> <link

    rel="stylesheet" href="css/style.css" /> <script src=“js/main.js”></script> </head> <body> <article> <section> <header></header> <p></p> </section> </article> </body> </html>
  21. <!DOCTYPE html> <meta charset="UTF-8" /> <title>Title</title> <link rel="stylesheet" href="css/style.css" />

    <script src=“js/main.js”></script> <article> <section> <header></header> <p></p> </section> </article>
  22. 5. まとめ • HTML5で新しく出た要素でわかりやすい HTMLを • jQueryなどの手軽に使えるライブラリが増えて るのでこの機にJavaScript等の言語も <!DOCTYPE html>

    <html lang="ja-JP"> <head> <meta charset="UTF-8" /> <title>Title</title> <link rel="stylesheet" href=“css/style.css" /> <script src=“js/main.js”></script> </head>