html5など社内勉強会 vol.2 - html5, css3

109
HTML5など 勉強会 Vol. 2 2011/10/17 @ 某社 System Management Headquaters George Harada

Upload: george-harada

Post on 18-Dec-2014

2.400 views

Category:

Education


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

HTML5など 勉強会 Vol. 2

2011/10/17 @ 某社

System Management HeadquatersGeorge Harada

Page 2: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

提 供

勉強会スタッフ(ボランティア)

インフラ統括本部Web標準G

Page 3: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

今回は参加申込でDevQuiz を受けて頂きました

Page 4: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

早速ですが解答発表!

Page 5: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

A B

C D

CSSの組み合わせ正しいものはどれ?

Q1

29 3

2 0

Page 6: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

body { background-color: white; color: black;}

CSSの書き方どこで(セレクタ) {   なにを(プロパティ): どうする(値); }

Page 7: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

A

HTMLの「id属性」に関する説明で正しいものはどれ?

Q2

26

B 28

C 28

D 15

id属性の目的は、要素を識別するための、固有の識別子を指定することである

1つの文書内で、id属性の値が重複してはならない(一意でなければならない)

CSSで、id属性を使って要素を指定する場合、id属性の値の前に #(ハッシュ)をつけて用いる

id属性の値は、半角アルファベットの大文字・小文字が区別される

Page 8: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

A

HTMLの「class属性」に関する説明で正しいものはどれ?

Q3

27

B 33

C 28

D 16

class属性の主な目的は、要素にスタイルを適用させるための、クラス名を指定することである

1つの文書内で、同じclass属性の値を何度でも用いることができる

CSSで、class属性を使って要素を指定する場合、class属性の値の前に .(ピリオド)をつけて用いる

class属性の値は、半角アルファベットの大文字・小文字が区別される

E 21class属性の値は、複数のクラス名を半角スペースで区切って列記することができる

Page 9: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

A

HTML5 で強化された「セマンティクス」の説明として、正しいものはどれ?

Q4

2

B 0

C 11

D 21

ある製品を使ったときに得られる経験や満足

検索エンジン最適化

構文

データの意味

Page 10: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

データの意味, 意味規則

つまり・・・

セマンティクス

HTML5では、文書が持つデータの意味をより明確に表すことが出来るようになる

Page 11: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

A

HTML5の「DOCTYPE宣言」として、正しいものはどれ?

Q5

3

B 31

C 0

D 0

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml">

<!DOCTYPE html><html lang="ja">

<?xml version="1.0" encoding="Shift_JIS"?><!DOCTYPE html PUBLIC "-//i-mode group (ja)//DTD XHTML i-XHTML(Locale/Ver.=ja/1.1) 1.0//EN" "i-xhtml_4ja_10.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">

<html>

Page 12: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

皆さん、成績は如何でしたか?

Page 13: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Congratulations!!

順不同

Page 14: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

と、いうことでここからが本番

Page 15: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 16: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

HTML5

Page 17: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

もっとセマンティックな文書を

もっとリッチなWebアプリを

もっと標準化された技術で

もっと扱いやすく(互換性, 有用性, 相互運用性, ユニバーサル・アクセス)

これらを実現するための仕様

=

Page 18: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

・ブロック要素・インライン要素

↓ ↓コンテンツ・モデル

廃止

HTML4との大きな違い

Page 19: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 20: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

どの要素にどんな内容(コンテンツ)を入れても良いか定義したもの

・すべての要素に定義されている・多くの要素はカテゴリーによって定義される・カテゴリーは要素を目的に応じて�グループ化したもので、全8種類ある

コンテンツ・モデル

Page 21: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

コンテンツ・モデル: カテゴリー

フロー

ヘッディング

セクショニング

エンベッディッド

フレージングインタラクティブ

メタデータ

セクショニング・ルート

Page 22: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

以降のコンテンツの表示や動作をセットする

・自身と他のドキュメントとの関連性をセットする

・他の "帯域外" の情報を伝達する

・基本的に、ブラウザ上には直接表示されない

メタデータ・コンテンツ

base command link meta noscript script style title

Page 23: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

ドキュメント内に現れるコンテンツ全般

フロー・コンテンツ

a abbr address area (map要素の子孫の場合) article aside audio b bdi bdo blockquote br button canvas cite code command

datalist del details dfn div dl em embed fieldset figure footer form h1 h2 h3 h4 h5 h6 header hgroup hr i iframe img input ins kbd keygen label map mark math menu meter nav noscript

object ol output p pre progress q ruby s samp script section select small span strong style (scoped属性が存在している場合)

sub sup svg table textarea time u ul var video wbr テキスト

Page 24: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

見出しから、その内容までを含んだ範囲(セクション)を定義する

・「章」や「節」といった概念に近い

・要素は潜在的に見出しとアウトラインを持つ

セクショニング・コンテンツ

article aside nav section

Page 25: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクションの見出しを表す

・「アウトライン・アルゴリズム」と密接に関係する

ヘッディング・コンテンツ

h1 h2 h3 h4 h5 h6 hgroup

Page 26: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

ドキュメントのテキスト

・段落中にあるテキストの範囲を指し示す要素

・HTML4におけるインライン要素に近い概念

フレージング・コンテンツ

a (フレージング・コンテンツのみが入れられている場合) abbr area (map要素の子孫の場合) audio b bdi bdo br button canvas cite code command datalist

del (フレージング・コンテンツのみが入れられている場合) dfn em embed i iframe img input ins (フレージング・コンテンツのみが入れられている場合) kbd keygen label map (フレージング・コンテンツのみが入れられている場合)

mark math meter noscript object output progress q ruby s samp script select small span strong sub sup svg

textarea time u var video wbr テキスト

Page 27: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

外部のリソースをインポートする・画像, プラグイン, フレーム, ビデオ, Canvas など

HTML以外の言語で表すもの・SVG, MathML

エンベッディッド・コンテンツ

audio canvas embed iframe img math object svg video

Page 28: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

ユーザが操作をすることができる

・ハイパーリンク, クリックすることで

・状態が変化するもの など

a audio (controls属性が存在している場合) button details embed iframe img (usemap属性が存在している場合) input (type属性がhidden状態でない場合) keygen label

menu (type属性がtoolbar状態の場合) object (usemap属性が存在している場合) select textarea video (controls属性が存在している場合)

インタラクティブ・コンテンツ

Page 29: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

この要素内のコンテンツは、前後のコンテンツとは切り離されたものとして見なされる

セクショニング・ルート

blockquote body details fieldset figure td

Page 30: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 31: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクション?

Page 32: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

フロー

ヘッディング

セクショニング

エンベッディッド

フレージングインタラクティブ

メタデータ

コンテンツ・モデル: カテゴリー

セクショニング・ルート

Page 33: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

見出しから、その内容までを含んだ範囲(セクション)を定義する

・「章」や「節」といった区分けの概念に近い

・要素は潜在的に見出しとアウトラインを持つ

セクショニング・コンテンツ

article aside nav section

Page 34: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクションの見出しを表す

・「アウトライン・アルゴリズム」と密接に関係する

ヘッディング・コンテンツ

h1 h2 h3 h4 h5 h6 hgroup

Page 35: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクショニング・コンテンツ

セクションを構成する要素(抜粋)

article aside nav section

ヘッディング・コンテンツ

h1 h2 h3 h4 h5 h6 hgroup

フロー・コンテンツ

header footer div

Page 36: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

それ自身が独立したコンテンツを表す■この要素が適しているかの判断基準

・フィードとして配信する際、そのコンテンツが・1つのエントリーとしてふさわしいか?ex. ブログの投稿, ニュースサイトの記事, ブログ記事へのコメント, 掲示板の投稿

article要素

Page 37: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

関連が薄いコンテンツを表す

■この要素が適しているかの判断基準

・仮に、そのコンテンツを削除しても、・ページが成り立つか?

ex. 補足記事, サイドバー, 広告, プルクォート

aside要素

Page 38: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

主要なナビゲーションを形成する範囲を表す■この要素が適しているかの判断基準

・それは、本当に主要なナビゲーションか?

ex. サイト全体のナビ, あるカテゴリー内のナビ, パンくずリスト

誤った使い方: サイト内検索の入力欄, サイトマップの本文

nav要素

Page 39: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

その他の一般的なセクション■この要素が適しているかの判断基準

・それは「章」や「節」といった単位で表すのに・ふさわしいコンテンツか?・他に、ふさわしい要素はないか?

誤った使い方: 見出しがない, レイアウトだけのために使用する

section要素

Page 40: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクションの見出しを表す

■この要素が適しているかの判断基準

・それは「章」や「節」といった単位の・見出しとしてふさわしいか?

h1~h6要素

Page 41: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

見出しと、それに付随する小見出し, 副題, キャッチフレーズなどをグループ化する■特徴

・h1〜h6要素だけしか入れられない

hgroup要素

Page 42: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セマンティクス上�特定の意味を持たない 一般的なコンテナ■この要素が適しているかの判断基準

・他に、ふさわしい要素はないか?

ex. 何かしら区別したい領域を囲む, グルーピングに使う

div要素

Page 43: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクションのヘッダー, フッターを表す■特徴

・1ページの中で、何回使ってもよい

ex. ページ全体のヘッダー, ある記事のヘッダー, etc.

header, footer要素

Page 44: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

いきなりですが

Page 45: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

実際にやってみる-- 社内URL --

Google Chrome / Safari で上記のURLにアクセスして、

会社のメールアドレスを入力※Google Chromeの方が、キャッシュが残りにくいのでオススメ

Page 46: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

課題今日紹介した要素を使ってセマンティクスを意識したマークアップに変更する。

制限時間: 5分

Page 47: HTML5など社内勉強会 Vol.2 - HTML5, CSS3
Page 48: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

解答例-- 社内URL --

Page 49: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 50: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

アウトライン?

Page 51: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

コンテンツの階層構造のこと

・書籍の目次をイメージすると分かり易い→ 本の「タイトル」がトップ階層→ 「タイトル」の下に「章」がある→ 「章」の下に「節」がある

基本的には、Webページも同じはず

アウトライン

Page 52: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

これもアウトラインですね1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 53: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

アウトラインを判別するためのきまり

・見出し要素だけで判別する方法→ 暗黙的なアウトライン

・セクション要素を使って判別する方法→ 明示的なアウトライン

アウトライン・アルゴリズム

Page 54: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクショニング・コンテンツに属する要素がなければ、見出し要素が現れた時点で、新たなセクションが始まる

・h1〜h6 要素の数字の大きさを基準に、・アウトライン・レベルを1段階ずつ上げ下げする

■判別基準・h1〜h6要素末尾の数字が、以前のセクションの見出しより・大きいか、小さいか、同じか

・要素末尾の数字が2つ以上大きく(小さく)なっても、・アウトライン・レベルが2段階下がる(上がる)わけではない

暗黙的なアウトライン

Page 55: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セクショニング・コンテンツに属する要素が現れると、その1つ上のセクションからアウトライン・レベルが1つ下がる

・その要素の中で最初に現れる見出し要素が、・そのセクションの見出しとなる

■セクショニング・コンテンツ

明示的なアウトライン

article aside nav section

Page 56: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

実際に確かめてみるHTML 5 Outlinergoo.gl/dZ5haarticle aside nav section

h1~h6

Page 57: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

アウトラインQ & A

Page 58: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

このアルゴリズムはなぜ作られたの?

Q.1

Page 59: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

「暗黙的なアウトライン」では、見出しの及ぶ範囲が分かりにくいから

→ もっとセマンティックな文書を

A.1

Page 60: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

セマンティックな文書にする利点は?

Q.2

Page 61: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

ブラウザやクローラーに、文書構造を正確に理解させることができる

→ 検索大手3社が共同で開発中 (schema.org)

→ ユニバーサル・アクセス化→ その他にも、イロイロ出てくるはず

A.2

Page 62: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 63: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

■基本的な優先順位後から読み込んだスタイルが優先

■個別性による優先順位より具体的に指定されたものが優先

■ !important 宣言問答無用の最終兵器 (最重要規則)

CSSの優先順位

Page 64: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

div { color: red; }

div { color: blue; }

基本的な優先順位

こちらが優先

Page 65: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

・より具体的に指定されたものが優先・以下の得点により優先順位を算出

個別性による優先順位

要素のstyle属性:idセレクタ:

classセレクタ:要素セレクタ:

1,000点0,100点0,010点0,001点

Page 66: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

<div id=”id” class=”class”>ここで問題</div>

#id { color: red; }

#id.class { color: green; }

個別性による優先順位

div { color: blue;}

.class { color: yellow;}

A B

C D

有効になるのは、どのセレクタでしょうか?

Page 67: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

解答C

それぞれの点数を計算してみよう

Page 68: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

最終兵器

/* すべてのdiv要素の文字色を赤に */ div { color: red !important; }

!important 宣言

Page 69: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 70: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

height: 縦サイズ width: 横サイズ margin: 外余白padding: 内余白 border: 罫線(marginとpaddingを隔てる線)

background-color: 背景色

領域サイズ, 余白, 罫線, 背景色

Page 71: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

インラインレベルの表示を制御text-align: right; text-align: center;text-align: left;

文字等の左右寄せ, センタリング

Page 72: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

魔法の言葉margin: 0 auto;

ブロックレベルのセンタリング

左右のマージンを自動で最適化する

上下のマージンは、0以外も指定できる

Page 73: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

/* 標準配置 */

position: static; /* 相対位置 */

position: relative;/* 絶対位置 */

position: absolute;/* 絶対位置でスクロールしても固定 */

position: fixed;

ボックスの配置方法(基準位置を指定)

top:bottom: left: right:

同時使用

Page 74: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

position: relative;

相対位置を指定して配置するposition: relative; top: 50px; left: 70px;

ex. 本来表示されるはずだった位置(static)から、ex. 下に 50px, 右に 70px 移動した場所に配置

Page 75: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

position: absolute;

絶対位置を指定して配置するposition: absolute; top: 50px; left: 70px;◊ 親ボックスが position: static; の時・画面全体の左上が top: 0, left: 0 の基準◊ それ以外が指定されている時・親ボックスの左上が top: 0, left: 0 の基準

Page 76: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

position: fixed;

絶対位置でスクロールしても固定position: fixed; bottom: 0px; left: 0px;ex. 画面の最下部に配置

※ iOS 5 未満の端末では、fixed が機能しない# 同等の表示がしたい時は、JavaScript で制御する

Page 77: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

position: static; 以外が指定されたボックスの重なり順を指定

position: relative;z-index: 10;

ボックスの重なり順を指定

数字が大きいほど上に配置

Page 78: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

sample-- 社内URL --

Page 79: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 80: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

これまでのレイアウト

Page 81: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

<table> <tr> <td rowspan="2">Book Photo</td> <td>Book Title</td> </tr> <tr> <td>Book Contents</td> </tr></table>

table要素を使ったレイアウト

Page 82: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

<div style="overflow: hidden;">

<img src="/html5.jpg" style="float: left;">

<p>Book Title</p> <p>Book Contents</p></div>

floatプロパティを使ったレイアウト

Page 83: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

◯table要素を使ったレイアウト・セマンティクスが正しくない・アクセシビリティを大きく損なう

◯floatプロパティを使ったレイアウト・柔軟な調整や配置が難しい・回り込みの解除が面倒

これまでのレイアウトじゃダメ?

Page 84: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

これからのレイアウト

Page 85: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

フレキシブル・ボックスとは、その中に含まれるボックスの

サイズ調整や配置を指定できる、柔軟なボックスのこと。

これまでのpositionプロパティや、floatプロパティを使う

ボックスのレイアウトに比べて、より簡単に指定できる。

フレキシブル・ボックス

Page 86: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

<div id="container_a"> <div id="box_1">Book Photo</div> <div id="container_b"> <div id="box_2">Book Title</div> <div id="box_3">Book Contents</div> </div></div>

フレキシブル・ボックスを使ったレイアウト

Page 87: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

#container_a { display: -webkit-box;}

#container_b { display: -webkit-box; -webkit-box-orient: vertical; /* 縦並びにする */

}

フレキシブル・ボックスを使ったレイアウト

Page 88: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

#box_1 { background-color: lightpink;}

#box_2 { background-color: lightblue;}

#box_3 { background-color: lightgreen;}

フレキシブル・ボックスを使ったレイアウト

Page 89: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

#box_1 { background-color: lightpink;}

#box_2 { background-color: lightblue; -webkit-box-ordinal-group: 2; /* 表示順を2番に */}

#box_3 { background-color: lightgreen; -webkit-box-ordinal-group: 1; /* 表示順を1番に */}

フレキシブル・ボックスを使ったレイアウト

Page 90: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

#container_b { display: -webkit-box; -webkit-box-orient: vertical; -webkit-box-ordinal-group: 1; /* 表示順を1番に */}

#box_1 { background-color: lightpink; -webkit-box-ordinal-group: 2; /* 表示順を2番に */}

フレキシブル・ボックスを使ったレイアウト

Page 91: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

#container_b { display: -webkit-box; -webkit-box-orient: vertical; -webkit-box-ordinal-group: 1; -webkit-box-flex: 3.0; /* ページ余白の 3/4 をこのボックスに割り当て */}

#box_1 { background-color: lightpink; -webkit-box-ordinal-group: 2; -webkit-box-flex: 1.0; /* ページ余白の 1/4 をこのボックスに割り当て */}

フレキシブル・ボックスを使ったレイアウト

Page 92: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

フレキシブル・ボックスとは、その中に含まれるボックスの

サイズ調整や配置を指定できる、柔軟なボックスのこと。

これまでのpositionプロパティや、floatプロパティを使う

ボックスのレイアウトに比べて、より簡単に指定できる。

他のプロパティをいろいろ組み合わせて便利な使い方を見つけよう!

フレキシブル・ボックス

Page 93: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

display: -webkit-box; or -webkit-inline-box;-webkit-box-orient: ボックスのレイアウト方向を指定

-webkit-box-direction: ボックスの並びを逆順に指定

-webkit-box-ordinal-group: ボックスの並び順を個別に指定-webkit-box-align: ボックスを揃える位置を指定-webkit-box-flex: 各ボックスに割り当てる余白の比率を指定

-webkit-box-pack: ボックスを寄せる位置を指定

フレキシブル・ボックス

Page 94: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

こんなグラフも簡単に作れるよ!<div id="container"> <div id="box1">50</div> <div id="box2">100</div> <div id="box3">20</div> <div id="box4">200</div> <div id="box5">140</div></div>

フレキシブル・ボックス

Page 95: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

sample-- 社内URL --

Page 96: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Agenda1. HTML51-1. コンテンツ・モデル1-2. セクションを構成する要素1-3. アウトライン2. CSS2-1. セレクタの優先順位2-2. 厳選プロパティ【レイアウト編】2-3. さようなら、table要素 / floatプロパティ3. ライトニングトーク

Page 97: HTML5など社内勉強会 Vol.2 - HTML5, CSS3
Page 98: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

10talks in a 60minute slot

60min.

5min.5min.5min.5min.5min.5min.5min.5min.5min.5min.

Page 99: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

1人の持ち時間5分延長はありません質疑応答の時間もありません気になる事は本人を捕まえて

LTのお約束ごと

Page 100: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

LTセッションは以上で終了です

Page 101: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

登壇者の皆さんにもう一度拍手を!

Page 102: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

これですべてのコンテンツ終了

Page 103: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

後日、アンケートにご協力下さい!!!

Page 104: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

勉強会スタッフ絶賛募集中です

Page 105: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

このあと残ってイスとテーブルを一緒に片付けてくれると嬉しい

Page 106: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

また次回お会いしましょう

Page 107: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

tthhaannkkss !!

Page 108: HTML5など社内勉強会 Vol.2 - HTML5, CSS3

Special Thanks toOperationOperationOperationOperationSupportSupportSupportSupport

OA Support 情報システム室順不同 敬称略