POINT3 Blueprint CSSを利用する-すぐに使えるCSSデザインテクニック 第1回 | デザインってオモシロイ -MdN Design Interactive-

POINT3 Blueprint CSSを利用する-すぐに使えるCSSデザインテクニック 第1回

2024.4.24 WED

【サイトリニューアル!】新サイトはこちらMdNについて

スタイリッシュなWebサイトを実現!すぐに使えるCSSデザインテクニック



POINT3

Blueprint CSSを利用する


Blueprint CSSは、固定幅のレイアウトに適したCSSフレームワークだ。親要素の幅に対して1/2、1/3といった割合でカラムが生成されるYUI Grids CSSに比べて、「カラム何個分」といった形で指定を行うため、より精密なレイアウトを実現できる。また、フォームや印刷向けのCSSも提供されており、利用範囲が広い点も魅力だ。

導入にあたり配布元からソースをダウンロードし【1】、XHTMLの<head>にリンクの記述を行う【2】。<body>直下にはコンテナタグ(div.container)を用意し、その中に「.span-」で始まるclass属性を加えた<div>を定義する。ここで指定する数値がカラム数にあたる。デフォルトでは全体の幅950pxに対し、ひとつのカラムが幅30pxとなるため、行当たりのカラムの合計数が「24」になるように調整しよう。それぞれのカラムには共通で10pxの右マージンが定義されていることから、いちばん右側にあたる<div>のみ「.last」が必須となる【3】。


【1】配布元(blueprintcss.org/)にあるアイコンをクリックするとダウンロードできる


【2】ソースに含まれる印刷用(print.css)とIE用(ie.css)のファイルもリンクさせておこう


【3】ネストする場合は、合計値が親要素のカラム数と同じになるように調整すればよい


このとき、「.border」または「.colborder」を加えることで、カラムの右側にボーダーを表示できる【4】。「.colborder」の場合は要素の右側に1カラム分の余白が生じるため、行当たりのカラムの合計数が「親要素のカラム数-1」となる点に注意しよう【5】。さらに、「.prepend-n」と「.pull-n」または「.append-n」と「.push-n」(class名末尾のnは、いずれもカラム数を表す任意の整数値)を組み合わせることで、指定された要素の左右いずれかに余白を設け、画像などが突き出したような表現が可能だ【6】。


【4】任意の要素にclass名を追加するだけで、区切り線の表現が可能だ


【5】.colborderでは1カラム分のスペースが生じるため、カラム数の調整が必要だ


【6】div.append-1とimg.push-1で左右対称にすることもできる


細かい指定には多少慣れが必要となるが、Blueprint CSS向けのチートシートを参考にカスタマイズしていこう【7】。また、<hr>タグで1pxのボーダーが表示される。スタイル定義に「clear: both」が含まれるため、新しい行に切り替える際にも有効だ。なお、hr.spaceとすることで1行分の空白を挿入することもできる。親要素の背景色を白以外にする場合は、このスタイルに微調整を加えよう【8】。


【7】定義済みのスタイル一覧はチートシート(digitart.net/blueprintcss/bluebrintcss.pdf)で確認しよう


【8】ソース内のhr要素に関する定義内容。backgroundとcolorプロパティを上書きすることで、任意の色に変更できる


デフォルトで定義されたコンテナタグやカラムのサイズは、Blueprint Grid CSS Generatorを利用することで任意の大きさに変更できる【9】。ページ内のフォームで新しい設定を行い、生成された「Compressed.css」タブの内容を保存して「/blueprint/screen.css」の代わりに利用しよう。Grid.pngタブをクリックすると、「.showgrid」向けの背景画像を入手することも可能だ【10】。


【9】「Blueprint Grid CSS Generator」(kematzy.com/blueprint-generator/)の設定例。Total Page Widthに赤字が表示される場合は、その値をDesired Page Widthに入力しよう


【10】この内容でブラウザに表示したものをキャプチャすれば、Photoshop向けのテンプレートを簡単に用意できる


なお、ここで生成されるコードの中でdiv.colborderの右マージンと右余白のプロパティ値だけが正しく計算されないようだ。そのため、「(Column Width+Margin Width×2)/2」で求められるpx値を指定しておこう【11】。


【11】右ボーダーがあるため、マージンまたは余白いずれかの数値を「-1px」とする



INDEX
POINT1 CSSフレームワークとは
POINT2 YUI Grids CSSを利用する
POINT4 オンラインサービスによるカスタマイズ


twitter facebook このエントリーをはてなブックマークに追加 RSS
【サイトリニューアル!】新サイトはこちらMdNについて

この連載のすべての記事

アクセスランキング

8.30-9.5

MdN BOOKS|デザインの本

Pick upコンテンツ

現在