Adobe
製品
Creative Suiteファミリー
Photoshopファミリー
Acrobatファミリー
Flash Platform
Digital Marketing Suite
Digital Enterprise Platform
Digital Publishing Suite
その他の製品一覧
ソリューション
コンテンツオーサリング
教育
金融機関
デジタルマーケティングソリューション
その他のソリューション
ラーニング サポート ダウンロード 会社情報
ご購入
アドビストア安心のサポート& サービス
アカデミック版のご購入学生、教職員、個人
ライセンスのご購入企業、教育機関、官公庁
販売パートナー
検索
 
情報 サインイン
ようこそ、 カート 注文状況 ユーザー登録
マイアカウント
サインアウト
サインインの目的 お客様のアカウントや体験版ダウンロード、製品の拡張機能、コミュニティエリアへのアクセスなどを管理するため
Adobe
製品 セクション   検索  
ソリューション 会社情報
サポート ラーニング
サインイン ようこそ、 注文状況 ユーザー登録
Qty:
Subtotal
Checkout
Adobe Developer Connection / Dreamweaverデベロッパーセンター /

いま求められるCSSデザインを考えてDreamweaver CS3を活用する

著者 益子貴寛(Takahiro Mashiko)

益子貴寛
  • 株式会社サイバーガーデン

Content

  • 日本語フォント名の「英・和」指定
  • ブラウザの動向とCSSハック

作成日

7 February 2008

ページ ツール

Facebookでシェア
Twitterでツイート
LinkedInでシェア
ブックマーク
印刷

Tags

必要条件

ユーザーレベル

中級

必要な製品

  • Dreamweaver CS3 (Download trial)

この記事では、リセットスタイルやセッティング、CSSハックなどの手法をご紹介し、Adobe® Dreamweaver® CS3をつかったWebサイト制作に活かす方法を解説します。

CSS2.1プラスアルファの時代に

Webクリエイターにとって、「CSS」イコール「CSS2.1」というのが当たり前になってしばらくたちます。W3Cから2007年10月に公開された草案「CSS Snapshot 2007」でも、「CSSといえばCSS2.1を意味する」と明確に述べられています。

W3C草案「CSS Snapshot 2007」

W3C草案「CSS Snapshot 2007」

しかし、それだけはなく、CSSのさらなる広がりを示唆しているのが印象的です。この仕様が勧告候補(Candidate Recommendation)になる段階には、CSSは次の内容で構成されるとしています。

  • CSS2.1(Errataを含む)
  • Selectors Level 3
  • CSS Namespaces
  • CSS Color Level 3

つまり、Webクリエイターは、CSS2.1だけでなくCSS3の一部についても理解が求められる、ということです。いくつかのモダンブラウザも、すでに「Selectors Level 3」や「CSS Color Level 3」を先行実装しており、今後ますます拡充させていくでしょう。

ちなみに、この仕様のURLは「css-beijing」となっていますが、私は由来をよく知りません。まさか、今年8月に開催される北京オリンピックまでに完成させる(「beijing」は日本語で「北京」)、という意味ではありませんよね。

CSSの地ならし「リセットスタイル」の設定

ブラウザごとのデフォルトスタイルが微妙に異なるため、Webクリエイターの多くがクロスブラウザ表示(すべてのターゲットブラウザで同一の表示を確保すること)に少なからず悩んでいるはずです。このような違いを「ならす」ためのCSSを「リセットスタイル」や「リセットCSS」と呼び、現在では当たり前のように利用されています。

もっとも簡単な方法として知られているのは、ユニバーサルセレクタ(「*」マーク)を利用してすべての要素のスタイルをリセットする方式ですが、現在では「要素列挙方式」を利用しましょう、という流れになっています。なぜなら、一部のブラウザでフォームパーツが崩れたり、ブラウザのデフォルトスタイルのよい部分をすべて失ってしまったり、ブラウザへの処理負荷がかかるといった理由からです。

Dreamweaver CS3での設定方法を説明します。[新規CSSルール]ダイアログボックスを開き、[詳細設定(IDおよび疑似クラスセレクタ)]をクリックします。[セレクタ]に半角カンマ区切りでリセットしたい要素を複数書きます。

ダイアログボックス
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「html, body, div, h1, h2, h3..」を入力する。

このように、たくさんの要素を列挙することになりますので、[コードビュー]のほうがやりやすいかもしれません。

スクリーンショット
@charset "UTF-8"; /* reset styles */ html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset { margin: 0; padding: 0; }

要素列挙方式によるリセットスタイルでは、どの要素を指定しておくべきかが決まっているわけではなく、制作するサイトによって柔軟に変えて構いません。通常は、構造のための要素とブロックレベル要素のマージンと余白をカットしておき、その他のプロパティは必要であれば指定します。また、インライン要素についても、やはり必要であればリセットしておくと覚えておきましょう。

リセットスタイルは、「reset.css」といったファイル名で保存しておき、その他のスタイルと区別しておくのが一般的です(このことを「コンポーネント化」といいます)。

日本語フォント名の「英・和」指定

font-familyプロパティで、日本語フォント名を「英・和」指定するのも、最近よく見られる傾向です。たとえば「ヒラギノ角ゴ Pro W3」というフォントは、日本語名だけでなく「Hiragino Kaku Gothic Pro W3」という英語名もあわせて指定しておくのです。

ソースコード
@charset "UTF-8"; /* reset styles */ html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset { margin: 0; padding: 0; color: #222222; font-family: "Hiragino Kaku Gothic Pro W3", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", Osaka, "MS P Gothic", "MS Pゴシック", sans-serif; }

さらに、クロスブラウザ表示を実現するうえで、「フォントの種類」や「フォントサイズ」がかなり曲者ですので、セッティング方法を覚えておくと便利です。

まず、フォントの種類について、Windows版 Internet Explorer 6と7は、フォールバックメカニズムがうまくきかない、という問題があります。複数の種類を指定した場合、先に書かれているものから優先的に適用し、もし指定されたフォントがパソコンになければ、あとに書かれているものを適用してくれる、というしくみが「フォールバック」です。

たとえば「ヒラギノ角ゴ Pro W3」「メイリオ」「МS Pゴシック」の順で書かれている場合、「ヒラギノ角ゴ Pro W3」がなければ「メイリオ」を、「メイリオ」もなければ「MS Pゴシック」が適用されるはずです。しかし、Windows版 Internet Explorer 6と7は、「ヒラギノ角ゴ Pro W3」がなければブラウザのデフォルトフォントである「МS Pゴシック」を適用してしまい、「メイリオ」を適用してくれないのです。

したがって、現在のところ、Windows版 Internet Explorer 6と7で「メイリオ」を最優先で適用するには、一番はじめに指定しておかなければならないのです。

ソースコード
@charset "UTF-8"; /* reset styles */ html, body, div, h1, h2, h3, h4, h5, h6, p, blockquote, pre, address, ul, ol, li, dl, dt, dd, table, th, td, form, fieldset { margin: 0; padding: 0; color: #222222; font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro W3", "ヒラギノ角ゴ Pro W3", Osaka, "MS P Gothic", "MS Pゴシック", sans-serif; }

次に、フォントサイズについて、ほとんどのブラウザのデフォルトは「16px」ですが、Mac OS版 Firefoxは「14px」となっています。Mac OS版 Firefoxでも「16px」で表示させるには、単位に固定値を利用するのが確実です。

ここで「アクセシビリティ的にどうか」と考えた人もいるでしょう。しかし、モダンブラウザのほとんどは、単位に固定値がつかわれていても、「可変」または「ズーム」できるのでまったく問題ありません。問題になるのは、Internet Explorer 6以前だけなのです。

したがって、すべてのブラウザに対して、body要素に「16px」を適用しておき、Internet Explorer 6以前では「medium」「1.0em」「100%」といった相対値が適用されるようにCSSハック(スターhtmlハック)で調整しておけばよいのです。

ソースコード
@charset "UTF-8"; /* For body element */ body { font-size: 16px; } * html body { font-size: medium; /* IE 6 or sooner */ }

ブラウザの動向とCSSハック

2008年には、ざっとあげるだけでも次のようなブラウザ動向が予想されます。

  • Netscapeの開発・サポート終了(2月1日→3月1日まで延長)
  • Internet Explorer 7日本語版の自動更新配布(2月13日)
  • Internet Explorer 8のリリース
  • Safari 3 Windows版の正式リリース(現在、パブリックベータ版)
  • Firefox 3のリリース
  • Opera 9.5 / 10のリリース

これまでのCSSハックの知識とともに、これら新バージョンへの対応も考えておかなければなりません。一部には「ブラウザのCSSサポートがいっそう進むことで、CSSハックは不要になる」という声もありますが、そこまで楽観視はできないでしょう。

というのも、たとえばボーダー幅「thin」「medium」「thick」という値について、それぞれどのぐらいの太さにするかはブラウザに任されています。これはほんの一例であって、このようなブラウザ任せの部分はけっこう存在します。つまり、CSSのサポート不足という「実装不備」は少なくなってきているとしても、「実装差異」は将来にわたってずっと残りつづけるのです。

現在、よく利用されるCSSハックを、ブラウザのバージョン別にあげてみましょう。クロスブラウザ表示の一助にしてください。それぞれ「#header」を対象にしています。

・Internet Explorer 7用

Internet Explorer 7用
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「*:first-child+html #header」を入力する。

・Internet Explorer 6以前用

Internet Explorer 6用
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「* html #header」を入力する。

・Safari 3用

Safari 3用
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「body:first-of-type #header」を入力する。

・Safari 2用

Safari 2用
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「html[xmlns*=""] body:last-child #header」を入力する。

Opera 9用

Opera 9用
[新規CSSルール]ダイアログボックスを開いて、  [詳細設定(IDおよび疑似クラスセレクタ)]をクリックした状態。  [セレクタ]には、「;;body #header」を入力する。

Firefoxは基準ブラウザ(作業のベースとするブラウザ)として利用することが多く、CSSハックでの調整作業は必要のないケースが一般的といってよいでしょう。

なお、Internet Explorer系の実装不備をカバーするJavaScriptライブラリ「IE7.js」の登場が話題になっています。いまのところ、セレクタやプロパティのバグフィックスにはつかえそうですが、レイアウトのズレや崩れを瞬時に解決してくれる効果はないようです。今後の展開に期待、といったところでしょうか。

JavaScriptライブラリ「IE7.js」

JavaScriptライブラリ「IE7.js」

まとめ

CSSデザインは、2007年でかなり「高み」に達したといえます。フォントサイズ変更にあわせてコンテンツ全体の幅と高さを伸縮させる「エラスティックレイアウト」、モバイル、テレビ、プリンタなどでのデザインを最適化する「マルチデバイスCSS」、CSSにうまく「JavaScriptライブラリ」を組み合わせてリッチなインタラクションを志向するなど、新たな手法が一般化しつつあります。

「CSSによってユーザー体験(ユーザーエクスペリエンス)をさらに向上させる」という意識をもつことが、いっそう大切になるでしょう。さまざまな新しいテクニックにチャレンジしつつも、ユーザーとクライアントに対して「より価値の高いWebサイトを提供する」という視点を忘れないようにしましょう。

製品

  • Creative Suiteファミリー
  • Photoshopファミリー
  • Acrobatファミリー
  • Flashプラットフォーム
  • Digital Marketing Suite
  • Digital Enterprise Suite
  • Digital Publishing Suite
  • モバイルアプリ

ソリューション

  • カスタマーエクスペリエンスマネジメント
  • コンテンツオーサリング
  • デジタルマーケティング

業種別ソリューション

  • 教育
  • 金融機関

サポート

  • ヘルプ&サポート
  • 注文と返品
  • ダウンロードに関するヘルプ
  • ユーザー登録に関するヘルプ

ラーニング

  • ADC: Adobe Developer Center
  • Adobe TV
  • Design Magazine
  • Photoshop Magazine
  • Focus In

ご購入方法

  • アドビストア
  • アカデミック版のご購入
  • ライセンスのご購入

ダウンロード

  • Adobe Reader
  • Adobe Flash Player
  • Adobe AIR
  • Adobe Shockwave Player

会社情報

  • プレスルーム
  • パートナープログラム
  • 企業の社会的責任(英語)
  • 採用情報
  • 投資家の皆様へ(英語)
  • イベント&セミナー
  • Legal(英語)
  • お問い合わせ
国・地域および言語の選択 日本(変更)
国・地域および言語の選択 閉じる

North America

Europe, Middle East and Africa

Asia Pacific

  • Canada - English
  • Canada - Français
  • Latinoamérica
  • México
  • United States

South America

  • Brasil
  • Africa - English
  • Belgium - English
  • Belgique - Français
  • België - Nederlands
  • България
  • Česká republika
  • Danmark
  • Eastern Europe - English
  • Eesti
  • España
  • France
  • Deutschland
  • Hrvatska
  • Ireland
  • Israel - English
  • Italia
  • Latvija
  • Lietuva
  • Luxembourg - Deutsch
  • Luxembourg - English
  • Luxembourg - Français
  • Magyarország
  • Middle East and North Africa - English
  • Moyen-Orient et Afrique du Nord - Français
  • Nederland
  • Norge
  • Österreich - Deutsch
  • Polska
  • Portugal
  • România
  • Россия
  • Schweiz - Deutsch
  • Suisse - Français
  • Svizzera - Italiano
  • Slovenija
  • Slovensko
  • Srbija
  • Suomi
  • Sverige
  • Türkiye
  • Україна
  • United Kingdom
  • Australia
  • 中国
  • 中國香港特別行政區
  • Hong Kong S.A.R. of China
  • India - English
  • 日本
  • 한국
  • New Zealand
  • Pacific - English
  • 台灣

Southeast Asia

  • Includes Indonesia, Malaysia, Philippines, Singapore, Thailand, and Vietnam - English

Copyright © 2012 Adobe Systems Incorporated. All rights reserved.

当Webサイトをご利用のお客様は、利用条件およびプライバシーポリシー(2011年9月30日更新)にご同意いただいたものとみなされます。

Reviewed by TRUSTe: site privacy statement