CSSフレームワークを使った 簡単なレスポンシブデザインの作成

33
CSSフレームワークを使った 簡単なレスポンシブデザインの作成 WordBench kyoto 2013.3.17

Transcript of CSSフレームワークを使った 簡単なレスポンシブデザインの作成

Page 1: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

CSSフレームワークを使った簡単なレスポンシブデザインの作成

WordBench kyoto2013 .3 .17

Page 2: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「自己紹介」

● デザイナー(DTPもWebも)やってます● WordPressの経験は2年ぐらい

秋山 一樹 〈アキヤマ カズキ〉facebook

twitter akiyum

Page 3: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「目次」

1 レスポンシブデザインについて

2 CSSフレームワークとは

3 CSSフレームワークのサービス色々

4 CSSフレームワークの使用方法 ~概論編~

5 CSSフレームワークの使用方法 ~制作編~

6 参考にさせてもらった レスポンシブwebデザイン作成に役立つサイトと本

Page 4: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「レスポンシブデザインについて」

単一のHTMLでスマートフォン、タブレットといった画面サイズが異なるデバイスへ対応できるWebサイトの制作手法(以降からワンソースマルチデバイスと表記)基本的にはグリッドシステム、フルードイメージ、メディアクエリを利用してマルチデバイスに対応させます。

アットマーク・エイティ「5分で分かるレスポンシブWebデザイン」から引用http://www.atmarkit.co.jp/ait/articles/1301/28/news068.html

Page 5: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「レスポンシブデザインのメリット」

● ワンソースマルチデバイスにより、更新・メンテナンスが楽● プログラムを用いずにCSSのみで対応しようと思えばできる● SEOにおける優位性 (Googleはスマートフォンサイトの構築方法として レスポンシブWebデザインを推奨)

ただし…

Page 6: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

やっぱりデメリットもあります。それは、コストが普通のPCサイトをつくるより当然多くなります。それぞれのデバイスの、デザインの整合性やコンテンツの優位性を考えた構築が必要になってきます。そして単純な制作作業時間。そういったデメリットを少しでも無くすためタイトルにも書いておりました通り、制作作業時間を減らせるよう、CSSフレームワークを使って簡単なレスポンシブデザインを、作成していきます。

Page 7: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「CSSフレームワークとは」

webサイトを作るときの便利な下地や骨組みのことをいいます。CSSフレームワークを使うとhtmlタグにクラスを指定してやるだけで、ベースとなるレイアウトや良い感じのボタンがサクッと作れちゃいます。 たとえば…

<a href=”#”>ボタン</a>

classに“button”をいれるだけで

ボタン

<a class=”button” href=”#”>ボタン</a>

これが こんな感じに!

ボタン

Page 8: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「CSSフレームワークのサービス色々」

CSSフレームワークで有名どころは「Twitter Bootstrap」(以下Bootstrap)があります。他にも…「Less Framework 4」「Foundation 4」「SimpleGrid」「Skeleton」「Kube」などがあります。

Page 9: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

調べてみると結構な数のサービスがあるとは思いますが、コードを覗いてみて自分の好みにあったフレームワークを使えば良いでしょう。

● jsがフレームワーク内に必要か● Gridの指定単位を“pixel”にするか“%”、“em”にするか● あとはデザインの好み(ボタン、アイコンなど)

Page 10: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「CSSフレームワークの使用方法 ~概論編~」今回は、先ほどのサービス色々であげられた「Kube」をつかってサイトを組み立てていきたいと思います。

僕が「Kube」を使う理由

● デザインは基本的に一から自分がしたい (「Bootstrap」とかは角丸、グラデーションなどが最初からついてたので 使いたくなかった。)● jsはあとで自分で用意するので最初はいらない (「Foundation」はjsがたくさん入っている)● Gridの単位は“%”か“em” (「Skeleton」や「SimpleGrid」は“pixel”単位)

Page 11: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

要約すると、とにかくコードもディレクトリもシンプルなもので“%”か“em”のGridである相対または可変のレイアウトでいこうとしたの「Kube」をつかうことにしました。※Gridの構成が“pixel”単位でよければ「Skeleton」を使ってたかも

こういったふうにCSSフレームワークにどこまでのことを求めているかを検証していけば自分にあったものが見つかると思います。

では実装に入っていこうと思います!

Page 12: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

これがないと始まりません。今回は「kube」のサイトにアクセスして素材をダウンロードします。ダウンロードすると以下のファイルがあります。

index.html kube.css(kube.min.cssっていうのも

あるけど内容は同じ)

master.css

「CSSフレームワークの使用方法 ~制作編~」1. CSSフレームワークをダウンロード

Page 13: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

kube.css

master.css

index.html

最低限の記述で、あとは好きなようにいれてくださいといった感じです。もうちょっと何かベースみたいなものが欲しい場合は、サイト上のDEMOサイトのソースをコピペすればよいでしょう。 ※CSSのコピペも忘れずに!

“kube.css” のスタイル以外で書き足したい場合はこのファイルに記入します。※WordPressにいれる場合は“style.css” と ファイル名を書き換えています。

サイトに掲載されているCSSタグが書かれています。

Page 14: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

今回はテストサイトのデザインラフを作ってみましたので、右図ラフをもとに制作を進めていきます。

2. デザインラフを作成。それを元にサイトを構築していく

Page 15: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

フレームワークといえども組み立てていくのは自分ですので計画をたててから構築していきましょう!※ラフをどこまでつくるのかというのはケースバイケースだと思いますが、今回はPCサイトのラフのみを作成しました。

Page 16: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

3-1. 骨組みから作成「kube」のサイトの“Grid”にコードの例が記載されているので、ラフに基づいて、それらをhtml上にどんどんコピペしていけばOKです!※サイトをプレビューしてみても、うまく組まれているのかわからない状態になっています。 そんな時はコンテンツ部分に“background-color” で色をつけてあげたら効率よく進められると思います。最終的には消すと思いますので、コメントをいれるなどして消す場所がどこにあるか、忘れないように!

3. サイトの構築開始

Page 17: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

とりあえず枠組みだけを作っていったらこういう感じになりました。

PCサイト用レイアウト

スマホサイト用レイアウト

Page 18: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

枠組みの幅を変えたい!tips

「kube」に限らず他のCSSフレームワークでもそうですが、あくまでパターン化されているので幅の細かい調整をしたいときは自分で調整しなければなりません。今回のラフにあたっては、大枠のコンテンツ幅(ここでいう“wrapper”)は100%でメインコンテンツとサイドバーで2カラムになっているので

とならなければいけないのでこの考え方をもとに調整をします。

メインコンテンツ+マージン+サイドバー=100%(wrapper)

Page 19: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

前ページでも述べたように「Kube」は%表示が“kube.css”に記載されていますので僕の場合は使いたいクラスの元の値はコメントに変えてその上に変更を記述します。要素+空き+要素=100%(wrapper)の考え方さえ守っていればやり方はpx単位であっても変わりませんし、今、僕が説明したやりかたでなくても構いません。むしろもっと良いやり方がある人は教えて下さい(汗

Page 20: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

100%

100%

サイドバーを広くするかわりにメインコンテンツを狭くする

kube.css内のこの部分を修正今回の場合(小数点切り捨て)

[サイドバー]22%➡27%[メインコンテンツ]74%➡69%[空き]変更なしサイドバーメインコンテンツを5%ずつ増減しました

Page 21: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

3-2. 要素をいれていく細分化された枠組みに要素をいれていきます。文字の大きさ、空きなどもPCのままでは具合が悪いということであれば、各対応デバイスのMediaQueries直下に記述しましょう。

4. 完成!

とりあえず静的なhtmlでの作業は以上です。WordPressに移す作業に関しましてはレスポンシブではないサイトと変わらず、所定の位置に要素を適切に(PHPに変えるとこはするなど)流し込めば完成すると思われます。

Page 22: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

実際にサイトにアップしたのでこちらからもアクセス可能です。wordpress.akiyum.com

Page 23: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

5. ざくっとおさらい

どのCSSフレームワークが自分にあっているか

● js必要か● 固定にするか可変にするか● デザインをどこまで じぶんがするか   …etc

ラフを作って枠組みだけ作ってみる

● ちゃんと計画をたてて 構築する● ラフをどこまで作るのか● 枠組みの幅を変えるか …etc

要素をいれていき完成させる

● フレームワークに対応して ないものは自分で実装する● ユーザビリティーの確認 (ボタンが押しやすいかなど)…etc

WordPressにするときは所定の位置に流しこむjsやスタイルシートのアップロードも忘れずに!

Page 24: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

6.作ってみて個人的に感じたこと

● やっぱり骨組み作るのはさっとできる● CSSフレームワークが用意するbaseの流れに沿って 作れば簡単にできる● 逆にいうと流れに逆らおうとすると面倒になる いちいち調査が必要になってくる。● Gridはフルにつかったけど、タイポグラフや色とかは結局自分で 組みこんだ。(今回はなかったけどテーブルとかは使うかも)● 知り合いの人に聞いたけどyoutube貼っつけたりしたら 不具合がでたりするケースがあるらしい(kubeに関しては)● LESSやSASSの必要性(CSSで入力するものが増えてきたので)

Page 25: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

オリジナルなデザインでサイト制作しようと思うとやはりそれなりのレスポンシブwebデザインの知識は必要!あくまで作業効率化ツールとして考えた方が良い。理想は自分でオリジナルのレスポンシブテンプレを持ってた方が良いかも(時代の流れで作り直しや不要になるリスクはあるが)

7.まとめ

Page 26: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

「参考にさせてもらったレスポンシブwebデザイン 作成に役立つサイトと本」

今回スライドショーとテストサイトを作る時に参考にさせてもらったサイトや本の紹介になります。「ツール」、「記事」、「書籍」、「その他」の順番で紹介していきます。

Page 27: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

ツール

http://responsive.vermilion.com/compare.php

Responsive CSS Framework Comparison〈レスポンシブなCSSフレームワークの機能比較表〉「Bootstrap」か「Foundation」か「Skeleton」の3つだけだけど詳しく比較されています。(全部英語だけど)

http://usablica.github.com/front-end-frameworks/compare.html

FRONT-END CSS FRAMEWORKS〈有用なCSSフレームワークのコレクションサイト〉ブラウザ対応状況、レスポンシブ対応の可否などが一目でわかります。

Page 28: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

記 事 (レスポンシブwebデザインの作り方)

http://wp-d.org/2013/01/18/2028/

WP-D〈流行りのレスポンシブ・ウェブデザイン! よく使われるデザインパターンを集めてみた!〉「スマホになると当然、表示面積がPCより小さく小さくなると思いますがそういった問題点をクリアするためのデザインパターンが用意されています。

http://liginc.co.jp/designer/archives/7734

株式会社LIG〈必読!5分でわかる流行のレスポンシブWebデザインまとめ〉この記事以外にも参考になる記事がたくさんあります。

Page 29: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

記 事 (Kubeについて)

http://coliss.com/articles/build-websites/operation/css/css-framework-kubeframework-for-professional-developers.html

coliss〈高性能すぎてビックリしました、レスポンシブデザイン用の 超軽量フレームワーク-Kube Framework〉

http://www.kojokojo.net/news/1419/

KOJOKOJOKNIGHT〈レスポンシブWEBデザイン化してみた〉知り合いの方のサイト。 Kubeで制作されました。

Page 30: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

書 籍

スマートフォンサイトのためのHTML5+CSS3要所要所の技術がたくさん掲載されていて実践向きな書籍だったので自分の肌にあってました。一から自分でレスポンシブwebサイトを作りたい方にもオススメ!

Web Designing今月号がタイムリーな特集です。2012/10号もお勧めです。

Page 31: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

その他

http://www.html5-memo.com/html5/responsive/

HTML5でサイトをつくろう〈ゼロからはじめるレスポンシブWebサイトを作るために勉強できるサイトをまとめました〉レスポンシブwebデザインのまとめが書かれていますとりあえずレスポンシブwebってどんなもんって考えている方にオススメです。

http://dotinstall.com/lessons/basic_twitter_bootstrap_v3

ドットインストール〈Twitter Bootstrap入門〉「Bootstrap」を使おうとお考えの方はこちらを参考にしてみてはどうでしょうか

Page 32: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

なんか最後の書籍なんかはステマみたいなことになりましたが。。笑兎にも角にも、レスポンシwebデザインは今後ますます増えていくと思いますので、制作者の方々は、こういったCSSフレームワークなどのツールとうまくお付き合いして作業の効率を高めていくことが課題になりそうですね。 

Page 33: CSSフレームワークを使った 簡単なレスポンシブデザインの作成

ご清聴ありがとうございました