SlideShare a Scribd company logo
CSS3の最新事情

     加藤誠
テクニカル・ゕドバ゗ザ
  Mozilla Japan
Agenda

• いくつかのCSS3の機能について説明します
 • Media Query
 • CSS Backgrounds & Borders
 • CSS Gradient
 • CSS Transitions
 • CSS Fonts
MEDIA QUERY
Webを表示するデバ゗ス

• Webを表示するデバ゗スはさまざま
 •   デゖスプレ゗
 •   プリンタ
 •   etc
• 各々のデバ゗スの表示解像度は同じではない
• 各デバ゗スごとのWebページを作成しているの
  が現状
 •   PC用サ゗ト
 •   iPhone用サ゗ト
 •   ケータ゗用サ゗ト
各デバ゗スへの対応するには

• ゕクセスするデバ゗スを検出して表示す
  るHTMLを切り替える
• IPゕドレス (i-mode網のゕドレスは決まっている)
• User-Agent
• JavaScript
• etc
• デバ゗スによってCSSを切り替える
• Media Queryを利用する
Media Query

• PC向けであれば、Internet Explorer以外はほ
  ぼ対応
 • iPhoneもWii (Opera)も対応
• 表示するデバ゗スによって切り替える
 • ブラウザによってscreen以外は非対応
• 画面解像度、色解像度で切り替え
 • ほぼどのブラウザも対応
使用例1

• スクリーンまたは印刷デバ゗スに対してのみ外
  部スタ゗ルシートを適用する
 <link rel=“stylesheet” type=“text/css”
 media=“screen” href=“sans-serif.css”>

 <link rel=“stylesheet” type=“text/css”
 media=“print” href=“serif.css“>

• スタ゗ルシート内で指定
 @media screen {
   * { font-family: sans-serif; }
 }
使用例2

• スクリーンのサ゗ズが最小800px
 @media screen and (min-width: 800px)
 {…}
• 複数の条件を指定
  @media screen and (min-width: 400px) and
  (max-width: 700px) {…}

• デバ゗スの縦が600px
  @media screen and (device-height:
  600px) {…}
使用例3

• デバ゗スの向き
 @media all and (orientation: portrait)
 {…}

• 画面の比率
 @media screen and (device-aspect-ratio:
 16/9) { … }

• カラーを持つ画面
 @media screen and (color) { … }
CSS BACKGROUNDS & BORDERS
今までのCSSでの背景の指定

• 背景画像や色は一つ
• 複数の画像を全体の背景に割り当てるためには、
  ハックが必要
 • 各HTML要素に各々背景を割り当てる
 • レ゗ゕウトが崩れれば、思い通りの背景にならな
   くなる
CSS Background

• 背景に複数の画像を割り当てることが可能
• 各々の背景の位置や繰り返しなどを指定可能
• 比較的新しい規格のため、Firefox 3.6で先行
  に実装
使用例

• 複数の画像を割り当てる
 background: url(firefox-48.png),
 url(flowers.jpg);

• 各背景には位置や繰り返しも指定可能
 background-repeat: no-repeat, repeat;
 background-position: bottom right,
 right;
CSS Borders

• 今までは色、太さ、スタ゗ル(ドットなど)が変
  更可能だったが、コーナーを丸くする方法が追
  加された
• ボーダーのすべてのコーナーを丸くする
 • border-radius: 4em;
• 各コーナーに対しても個別に変更可能
 • border-radius: 2em 1em 4em 3em;
• これも現状では、”-moz-” prefixが必要
使用例1




background: lightgray;
color: white;
-moz-border-radius: 25px 0px 25px
0px;
padding: 0.25em;
font-size: 50px;
使用例2

• コーナーを楕円にすることも可能です




  background: lightgray;
  color: white;
  -moz-border-radius: 25px / 50px 0px
  25px 0px;
  padding: 0.25em;
  font-size: 50px;
CSS GRADIENT
CSS Gradient

• 現時点で定義されている形は2つ
 •   Linear
 •   Radial
• 繰り返しの形式(repeating)もサポート
• 先に実装されたWebKitでは構文が異なる
 •   WebKitでの先に行われた実装 (例: linear)
     •   background: -webkit-gradient(linear, left top, left bottom,
         from(white), to(gray));

 •   現在のドラフト (例: linear)
     •   background: linear-gradient(top, white, gray);
CSS Gradient

• Firefox 3.6 / Gecko 1.9.2では、”-moz-
  ”prefixを使う必要あり (-moz-linear-gradient)
• 画像を受け入れることができるCSSプロパテゖす
  べてで利用可能
 •   Firefox 3.6ではbackgroundくらいにしか動作しません
Linear Gradients

• linear-gradient( [<point> || <angle>,]?
  <stop>, <stop> [, <stop>]* )
     linear-gradient(
       top,
       blue,
       white);


     linear-gradient(
       45deg,
       blue,
       white);
Radial Gradients

• radial-gradient( [<position> || <angle>,]?
  [<shape> || <size>,]? <stop>, <stop>[,
  <stop>]* )


  -moz-radial-
  gradient(
    red,
    yellow,
    green
  );
Repeating Gradient

• Linerやradialの記述へ”repeating-”のprefix
  を追加
  repeating-linear-gradient(
   top,
   blue 5px,
   white 20px);


  repeating-linear-gradient(
   top left -45deg,
   red,
   red 5px,
   white 5px,
   white 10px);
混合した使用例

• CSS backgroundとCSS Gradientを同時に指
  定する




 background: url(demo/firefox.png), -moz-linear-
 gradient(left, rgba(255,255,255,0),
 rgba(255,255,255,1)), url(demo/flowers.jpg);
 background-repeat: no-repeat, no-repeat, repeat;
 background-position: bottom right, left, right;
CSS TRANSITIONS
CSSで動的なコンテンツの作成

• 今までの動的なコンテンツを作成する方法
 • Flash
 • JavaScript
• 今後簡単なものであれば、以下のものが使用可
  能に
 • CSS Transitions
 • CSS Animations
CSS Transitions

• 時間経過で指定したCSSプロパテゖを変化させ
  る
 • すべてに対応している訳ではなく、変更できる
   CSSプロパテゖは決まっている
   •   http://www.w3.org/TR/css3-transitions/

• 現状では、prefixを使用する必要がある
 • -moz- (Firefox 3.7以降)
 • -webkit- (Safari / Chrome)
 • -o- (Opera 10.50以降)
使用例

• 変更するCSSプロパテゖを指定
 • transition-property: background-color;
• 変更間隔
 • transition-duration: 1s;
• タ゗ミング変更
 • transition-timing-function: linear;
• まとめて記述することも可能
 • transition: background-color 1s linear;
使用例2

• 各ブラウザ上で動作させるには、すべての記述
  を書く(Prefixが必要なため)

 DIV {
   -moz-transition: background-color 1s
 linear;
   -webkit-transition:    background-color
 1s linear;
   -o-transition:         background-color
 1s linear;
 }
CSS FONTS
CSS Font

• 過去にはInternet Explorerのみで使えるEOT
  フォントと形式が存在
 • W3Cに提案されたが採用に至らず
• Firefox 3.5 / Chrome
 • ダウンロードフォントをサポート (TrueTypeフォ
   ント / OpenType フォント)
• Firefox 3.6
 • ダウンロードフォントとして、新たにWOFFフォ
   ントをサポート
WOFF

• WOFF = Web Open Font Format
• Firefox 3.6では新しいWebフォント形式
  (WOFF) をサポート
 • フォントベンダと共同で作成した新しいフォント
   形式
 • OpenTypeなどよりもサ゗ズは小さい(グリフデー
   タを圧縮)
 • 現状では差分ダウンロードには対応していない
 • MIMEタ゗プは決まってない




                  3
使用例1

• GentiumTestというフォントを定義する
 @font-face {
   font-family: GentiumTest; src:
 url(fonts/Gentium.woff) format(“woff”);
 }


• ダウンロードに失敗した場合にはローカ
  ルのフォントを指定する場合
 @font-face {
   font-family: GentiumTest; src:
 local(Gentium), url(fonts/Gentium.ttf);
 }
使用例2

• 複数のプラットフォームのフォントをサポート
  する
 @font-face {
   font-family: Japanese;
   src: local(HiraKakuPro-W3), local(Meiryo);
 }
今後の検討部分

• ダウンロードフォントについては初期実装が行
  われた
• 現状のCSSでは、フォントに対しては、サ゗ズ
  指定、ボールド、゗タリックくらいしかサポー
  トしていない
• OpenTypeフォントにはいろいろな業界から
  フゖードバックを受けたさまざまな機能が存在
• それをWeb(HTML/CSS)に持ってこれないか?
フォントの問題として

• JIS X 0213:2004の変更
 • “葛飾区”とか“祇園”
• Windows VistaでシステムフォントがJIS
  2004対応フォントに
 • Windows VistaではOpenTypeの機能を利用
   して、フォントに複数の字形を割り当てるこ
   とでゕプリケーション側で対応可能
OpenType featureの使用

• CSSでフォントのどの字形を使うかを選択
 • font-variant-east-asian: jis78




 • font-variant-east-asian: traditional




• これらはOpenType feature Tagの機能を利用
その他 (一例)

• font-variant-ligatures: common-ligatures



• font-variant-alternates: contextual



• font-variant-numeric: diagonal-fractions
リフゔレンス

• CSS Backgrounds & Borders Module
 •   http://www.w3.org/TR/css3-background/
 •   http://dev.w3.org/csswg/css3-background/
     (Editors Draft)
• CSS Fonts Module
 •   http://www.w3.org/TR/css3-fonts/
 •   http://dev.w3.org/csswg/css3-fonts/ (Editors
     Draft)
• CSS Image Value Module Level 3 (CSS
  Gradient)
 •   http://dev.w3.org/csswg/css3-images/ (Editors
     Draft)
リフゔレンス

• CSS Transitions Module
 •   http://www.w3.org/TR/css3-transitions/
 •   http://dev.w3.org/csswg/css3-transitions/ (Editors
     Draft)
• Media Queries
 •   http://www.w3.org/TR/css3-mediaqueries/
 •   http://dev.w3.org/csswg/css3-mediaqueries/
     (Editors Draft)
• hacks.mozilla.org - Demo
 •   http://hacks.mozilla.org/category/css/
Any Question?

More Related Content

PDF
WordPress Cloud Design Pattern
PDF
File Server on Azure IaaS
PDF
WordPress アジュール部 ハンズオン
PDF
WordPressって何
PDF
20130225 pronet study
PDF
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
PDF
今日はMongoDBの話はしない
PDF
WordPressベースの 月間1000万PVサイトのサーバー構成
WordPress Cloud Design Pattern
File Server on Azure IaaS
WordPress アジュール部 ハンズオン
WordPressって何
20130225 pronet study
20120407 ASP.NET+C#で開発する大規模ソーシャルゲーム
今日はMongoDBの話はしない
WordPressベースの 月間1000万PVサイトのサーバー構成

What's hot (16)

PPTX
LESSについて
PDF
PHPで大規模ブラウザゲームを開発してわかったこと
PPTX
Windows azureを知ろう ロール&ストレージ編
PDF
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
PPTX
Heroku meetup#11(フル)
PPTX
20140924 mt cloud_handson_seminar
PDF
カスタムフィールド 匠の流儀
PDF
MT東京-09 Movable Type Meetup JSON
PDF
Ajax非同期通信によるサーバー通信
PDF
7/7 WordBench kobe dreamweaver seminar
PDF
WordPress on Movable Type
PDF
HTML5 Local Storageを利用したメモ帳アプリ
PDF
RESTful #とは RailsスタイルからRESTを学ぼう
PDF
MediaWiki Tips for saveMLAK - wikibana
PPTX
ハンズのDynamoDBクラウドパターン
PPTX
SEOにおいてのHTML/CSS/javaScript
LESSについて
PHPで大規模ブラウザゲームを開発してわかったこと
Windows azureを知ろう ロール&ストレージ編
Lampで作るソーシャルアプリの負荷対策~アプリとインフラの調和のテクニック~
Heroku meetup#11(フル)
20140924 mt cloud_handson_seminar
カスタムフィールド 匠の流儀
MT東京-09 Movable Type Meetup JSON
Ajax非同期通信によるサーバー通信
7/7 WordBench kobe dreamweaver seminar
WordPress on Movable Type
HTML5 Local Storageを利用したメモ帳アプリ
RESTful #とは RailsスタイルからRESTを学ぼう
MediaWiki Tips for saveMLAK - wikibana
ハンズのDynamoDBクラウドパターン
SEOにおいてのHTML/CSS/javaScript
Ad

Similar to CSS3の最新事情 (20)

PDF
Web Technology features with Firefox 3.6 / Gecko 1.9.2 and later
PDF
ブラウザにやさしいHTML/CSS
PDF
CSS Preprocessor Hands-on
KEY
HTML5でスマートフォン開発の理想と現実
PDF
ADC OnAir 第5回 『レスポンシブ Web デザインを学ぼう!実装編』
PDF
Concentrated HTML5 & Attractive HTML5
PDF
TeXの後継として、HTML5&CSS組版〜Vivliostyleプロジェクト
PDF
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
PDF
Htmlコーディングの効率化 後編
PDF
次世代CSS組版〜Vivliostyle プロジェクト
PDF
「html5 boilerplate」から考える、これからのマークアップ
PDF
マークアップ講座 02 CSS
PDF
⑳CSSでアニメーション!その1
PPTX
Mvp road show_0830_rev1
PPTX
F-site発表資料「Flashユーザーが今覚えておきたいHTML5」
PPTX
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
PPTX
Css3
PDF
JavaScriptトレンド総括(2014)
PDF
現在のWebフロントエンドの現状と愚痴と、それに対するHaxeフロントエンドライブラリMageについて
PPTX
インタラクティブコンテンツにおけるHTML5とFlash
Web Technology features with Firefox 3.6 / Gecko 1.9.2 and later
ブラウザにやさしいHTML/CSS
CSS Preprocessor Hands-on
HTML5でスマートフォン開発の理想と現実
ADC OnAir 第5回 『レスポンシブ Web デザインを学ぼう!実装編』
Concentrated HTML5 & Attractive HTML5
TeXの後継として、HTML5&CSS組版〜Vivliostyleプロジェクト
TypeScript ファースト ステップ (v.0.9 対応版) ~ Any browser. Any host. Any OS. Open Sourc...
Htmlコーディングの効率化 後編
次世代CSS組版〜Vivliostyle プロジェクト
「html5 boilerplate」から考える、これからのマークアップ
マークアップ講座 02 CSS
⑳CSSでアニメーション!その1
Mvp road show_0830_rev1
F-site発表資料「Flashユーザーが今覚えておきたいHTML5」
パララックスでレスポンシブでJ query mobileなサイトのつくりかた
Css3
JavaScriptトレンド総括(2014)
現在のWebフロントエンドの現状と愚痴と、それに対するHaxeフロントエンドライブラリMageについて
インタラクティブコンテンツにおけるHTML5とFlash
Ad

More from Makoto Kato (20)

PDF
Active scripting
PDF
e10sとアプリ間通信
PDF
PDF
PDF
Firefox OSのアーキテクチャと構成技術
PDF
Mozillaのビルドインフラ
PDF
Openness, Innovation and Opptunity
PDF
Mobile Web
PDF
Firefox Mobile
PDF
Firefox 4 and Mobile
PDF
Mobile addon
PDF
keep it real
PDF
Firefox mobile for android internals
PDF
Think.next
PDF
Firefox 4 with SVG
PDF
Firefox for mobile
PDF
Firefoxの開発プロセス
PDF
"Open"
PDF
ブラウザの歴史
PDF
Raindrop
Active scripting
e10sとアプリ間通信
Firefox OSのアーキテクチャと構成技術
Mozillaのビルドインフラ
Openness, Innovation and Opptunity
Mobile Web
Firefox Mobile
Firefox 4 and Mobile
Mobile addon
keep it real
Firefox mobile for android internals
Think.next
Firefox 4 with SVG
Firefox for mobile
Firefoxの開発プロセス
"Open"
ブラウザの歴史
Raindrop

CSS3の最新事情