このシリーズの5番目のパートでは、コードビューとCSSデザイナーを使ってホームページのスタイルを設定し、要素の周囲にスペースを空け、デバイスごとに自動的にサイズが変わる画像を追加します。

このチュートリアルシリーズのパート5では、Dreamweaverを使って画像のサイズがブラウザーの幅に応じて変化するようにCSSで設定する方法について説明します。前のパートでは、最初はコードビューを、次にCSSデザイナーを使用して、Bayside Beatサイトのホームページのスタイル設定を始めました。CSSデザイナーを使用する利点は、ライブビューに結果がすぐに表示されることです。このパートでは、要素の周囲のスペースを調整し、画面の解像度に合わせて自動的にサイズが変わる画像を追加することにより、デザインが次第に形として見えるようになってきます。
CSSには、要素の周囲の水平と垂直のスペースを制御するプロパティとして、padding とmargin があります。どちらを選んでも問題ないケースがあります。どちらも要素の周囲にスペースが追加されます。しかし、重要な違いがあります。マージンは、要素の幅と高さには含まれません(図1を参照)。これは、デフォルトのボックスモデルを使っている場合も、パート4で作成したスニペットでそのモデルを上書きしている場合も、同様です。

パディングとマージンが様々な機能に与える影響を、次の表にまとめました。
機能
パディング
マージン
背景
要素の背景は、パディングにも拡張されます
親要素の背景が透けて見えます
ボーダー
パディングはボーダーの内側
マージンはボーダーの外側
相殺
相殺されません
隣接するマージンと相殺されます
padding とmargin はどちらも要素の周囲の空白を増やしますが、margin は少し違う動作になります。
図2では、2つの要素が上下に並んでいます。最初の要素の下margin は20px で、2番目の要素の上マージンは30px です。

この2つの要素間の垂直距離は、両方のマージンを足したもの(つまり、50px )になると予想するのは自然なことです。しかし、実際にはそうなりません。隣接する上下のマージンは相殺つまり大きい値に包合されます。したがって、この2つの要素間の垂直距離は、両方のマージンのうち大きいもの(つまり、30px )になります(図3を参照)。

それに対して、パディングは相殺されません。この例で、下マージンと上マージンを同じ大きさのパディングで置き換えると、この2つの要素は50px 離れます。
パート4で作成したスタイルルールでは、bodyとwrapper
ページ上端の間隔に関する問題を解決するには、主見出しの上マージンを、同じ大きさのパディングに置き換える必要があります。同時に、他の見出しのスタイルを設定します。
ライブビューでメインの
見出しが選択されているので、Dreamweaverからセレクターとして"#wrapper header h1 "が提案されます。これは非常に限定的な子孫セレクターで、IDとしてwrapperを持つ要素の内側にネストした
プロパティペインの上部にある アイコンをクリックし、新しいセレクターに対して次のテキストプロパティを設定します。
見出しはメインの本文より濃いグレーになり、太字ではなくなります。
ライブビューで主見出しと"h1, h2 "セレクターを選択した状態のまま、セレクターペインのプラスボタンをクリックし、上向き矢印キーを2回押して、h1 のセレクターを作成します。アイコンをクリックして「レイアウト」セクションに移動し、次のプロパティを設定します(図4を参照)。

これにより、見出しの上下に、マージンではなくパディングによって間隔をあけることができました。背景として親要素(wrapper)に設定されている白色が用いられるため、上部に生じていた薄青色の帯を消すことができました。
「テキスト」セクションで、次のプロパティと値を設定します。
text-align プロパティとtext-transform プロパティはアイコンを使って設定します(図5を参照)。各アイコンの意味を確認するには、マウスポインターを合わせてください。

これで、主見出しは、文字サイズが大きくなり、中央揃えになり、すべて大文字になります。
単位としてem を使うと、テキストや上マージンのサイズが、親要素のテキストに比例したサイズに変更されます。
wrapper

変更を加えた後は、ファイル/すべての関連ファイルを保存 を使って作業内容を忘れずに保存してください。
ページに画像を追加してページを飾ってみましょう。このセクションでは、CCライブラリから画像をダウンロードし、その画像にキャプションを付けてindex.htmlに挿入します。このとき、
基になるHTMLの様子を確認できるように、分割ビューを開きます。必要に応じて、関連ファイルツールバーで「ソースコード 」をクリックします。その後、ライブビューで、"Riding the Cable Cars"という見出しの後にある2番目の段落を選択します。"The cable cars rely"という語句で始まる段落です。
挿入パネルを開き、HTMLカテゴリーの「Figure 」をクリックします(図7を参照)。

配置を支援するダイアログで「後」に配置するように選択します。

ダイアログボックスが表示されますので、サイト内でファイルを格納する場所、画像形式およびサイズを指定します。srcフィールドには、このチュートリアルシリーズのパート1でデフォルトの画像用フォルダーとして設定したimagesフォルダーに画像を保存することが自動的に提案されます。提案される画像の名前は、CCライブラリで使用されている名前をベースにしています。この2つは問題ありませんが、PNG 32形式で保存するとファイルが大きくなります。ダイアログボックスの右側にあるドロップダウンメニューを開き、「JPEG 」を選択します(図9を参照)。

こうすると、src フィールドのファイル名拡張子が.jpg に変更されます。
幅が3000pxを超えているので、この画像は大きすぎます。Wフィールドの値を400 に変更します。デフォルトでは、W(幅)フィールドとH(高さ)フィールドの間にあるリンクアイコンが選択されているので、Hフィールドの値が自動的に266 に変更されます。
ダイアログボックスの値が図10と一致していることを確認してから、「OK 」をクリックします。

画像は

キャプションのプレースホルダーテキストをダブルクリックし、"The cable car terminus near Union Square "に置き換えます。
index.htmlを保存します。
CCライブラリパネルのコンテキストメニューには、リンクされたアイテムにもリンクされていないアイテムにも、挿入およびダウンロードのオプションがあります。リンクされていないアイテムの場合は、自分のサイトに画像のローカルバージョンが作成されるだけです。それに対して、リンクされたアイテムの場合は、Creative Cloudのライブラリ内で画像が変更されると、ローカルバージョンの画像が自動的に更新されます。さらに詳しくは、Creative Cloudでのアセットの同期 を参照してください。
index.html内のもう1つの画像は、heroというIDの
分割ビューを閉じるために、ドキュメントウィンドウの上部にある「ライブ 」をクリックします。その後、黒丸リストの直後の"Bayside Beat keeps"で始まる段落が見えるようにします。
DOMパネルで、ネストした子アイテムを持つ要素の大部分を折りたたみますが、図12のとおり、div #hero 要素は展開した状態にしてください。こうすると、画像を正しい場所に配置しやすくなります。

CCライブラリパネルで、golden_gate というラベルの画像を選択し、ライブビューにドラッグし始めます。ページ上を移動すると、画像の挿入先を示す緑色の横線が表示されます。
緑色の横線が黒丸付きリストと段落の間に合ったらドラッグを止めますが、まだマウスのボタンを放さない でください。数秒待つと、マウスポインターの右下に小さな アイコンが表示されます(図13を参照)。

マウスボタンを押したまま、マウスポインターをこのアイコンの上に移動すると、フローティングDOMパネルが表示されます。フローティングパネル上でドラッグを続けて、緑色の横線がdiv #hero 要素とその後のp の間に表示されるようにします(図14を参照)。適切な場所で、マウスボタンを放します。

ダイアログボックスが表示されますので、ローカルサイトでファイルを格納する場所と画像形式を指定します(前のセクションの図9と図10を参照)。
画像形式をJPEG に変更し、width とheight をそれぞれ1000 と547 に設定します。「OK」をクリックします。
ゴールデンゲートブリッジの画像が、黒丸付きリストと段落の間に挿入されたはずです。挿入した場所が間違っていても、心配ありません。後で、簡単に修正できます。
画像が選択された状態で、ハンバーガーアイコンをクリックして、クイックプロパティインスペクターを表示します。
alt フィールドに"The Golden Gate Bridge
"と入力し、widthフィールドとheightフィールドにある値を削除します。この画像にはキャプションを付けないので、音声ブラウザー向けにalt属性が必要です。画像のサイズは画面の解像度に応じて自動的に変更されるので、サイズを設定する必要はありません。
DOMパネルで、img要素がdiv #hero とp の間にあり、p と同じレベルにインデントされていることを確認します(図15を参照)。

画像の位置が間違っている場合は、DOMパネル上で画像をドラッグし、緑色の横線をdiv #hero とその後のp の間に移動します。その後、マウスボタンを放します。
index.html を保存します。
ライブビューとDOMパネルでのドラッグ&ドロップは、webページ内のHTML要素やアセットを再編成するための強力な手段です。それで、このテクニックを自分で快適と感じられるまで練習することをおすすめします。
マウスを使わない操作がお好みの場合は、ゴールデンゲートブリッジの画像を、前のセクションと同じ方法で挿入することができます。まずhero
ゴールデンゲートブリッジの画像は横幅が1000pxで、サイト内のもう1つの画像は横幅が400pxに、それぞれリサンプルされています。HTMLからwidth 属性とheight 属性を削除したため、ブラウザーには画像の元々のサイズで表示されます。利用可能な画面スペースに対してレスポンシブな画像にするには、CSSで少しの工夫を施す必要があります。
ライブビューのスクラバーを左にドラッグして、ライブビューの幅を狭くします(図16を参照)。ライブビューの幅が1000pxより狭くなると、水平スクロールバーが表示され、ゴールデンゲートブリッジの右端が隠れます。

ライブビューでゴールデンゲートブリッジの画像が選択された状態のまま、CSSデザイナーでresponsive.cssを選択して新しいセレクターを作成します。上向き矢印キーを1回押して、提案されるセレクターを"#hero img "に変えた後、Enter/Returnキーを押して変更を確定します。
これにより、子孫セレクター(2つ以上のセレクターをスペースで区切ったもの)が作成されます。このセレクターは、heroというIDの要素の内側にある画像を対象にします。
次のプロパティと値を設定します(どちらも「レイアウト」セクションにあります)。
max-width プロパティを100% に設定すると、画像が親要素(この場合は、hero
ライブビューのスクラバーを左右にドラッグします。ゴールデンゲートブリッジの画像が、使用可能な水平スペースに合わせて自動的にサイズ変更されます(図17を参照)。

ライブビューでケーブルカーの画像を選択し、上向き矢印キーを1回押します。選択範囲がHTML階層で1つ上がり、親要素である
figure セレクターを作り、次のプロパティを設定します。
ライブビューを400pxより狭くしてみます。

最新のほとんどのブラウザーは、対応状況に違いがあるものの、さまざまなCSSフィルターをサポートするようになりました。画像をグレースケールに変換し、マウスを合わせるとカラー版が表示される、というシンプルなスタイルを作成してみましょう。
ライブビューでケーブルカーの画像を選択し、imgエレメントディスプレイのプラスボタンをクリックします。入力フィールドに".grayscale "と入力し(先頭はドットです)、TabキーまたはEnter/Returnキーを押して、画像にクラスを割り当てます。
表示されるポップアップでresponsive.css が選択されていることを確認してから、ポップアップ以外の場所をクリックして、ポップアップを消します。
CSSデザイナーのセレクターパネルで、Dreamweaverによって作成された.grayscale セレクターを選択し、プロパティペインの上部にある「セットを表示 」チェックボックスを選択します。
「プロパティの追加 」フィールドと「値の追加 」フィールドに、次のプロパティと値を設定します。
画像が白黒写真のように表示されます(図19を参照)。

セレクターペインで、.grayscale セレクターを右クリックし、コンテキストメニューから「複製」を選択します。Dreamweaverによってスタイルルールのコピーが作成されます。このとき、新しいセレクターの名前は編集可能状態のままになります。次のように、名前の末尾に":hover"という擬似クラス名を追加します。
.grayscale:hover
擬似クラスについてさらに詳しくは、このチュートリアルシリーズのパート6で説明します。
プロパティペインで、各プロパティの値をダブルクリックし、値を「grayscale(0%) 」に変更します。
ライブビューで画像にカーソルを合わせます。今度は画像がカラーになります。
作業内容を保存するため、ファイル/すべての関連ファイルを保存 を選択します。
ブラウザー間の互換性のため、-webkit-filter とfilter の両方を使用する必要があります。どちらのプロパティも認識しない以前のバージョンのブラウザーでは、このスタイルルールは無視され、画像はカラーで表示されます。
前のセクションでは、クラスを割り当てることによって、ケーブルカーの画像にhero画像とは異なるスタイルを設定しました。ただし、要素のスタイルを変えるためにいつもクラスを使用する必要はありません。ゴールデンゲートブリッジの画像と最初の
ライブビューで、ゴールデンゲートブリッジの画像のすぐ下にある段落を選択します。
関連のあるスタイルルールはまとめて配置するとよいので、CSSデザイナーのセレクターペインで"#hero img "を選択してハイライトしてから、プラスボタンをクリックします。Dreamweaverからセレクターとして"#wrapper #hero p "が提案されます。上向き矢印キーを1回押して、提案を"#hero p "に変更します。
プロパティペインの右上にある「
セットを表示 」チェックボックスの選択を解除し、 アイコンをクリックして「テキスト」セクションに移動します。
CCライブラリパネルにあるピンク色のスウォッチをクリックして16進数値#F68979 をクリップボードにコピーし、その値をcolor プロパティの値として貼り付けます。hero
font-weight を600 に設定します。
font-size の右側を1回クリックし、単位としてem を選択します。パート4で説明したとおり、Dreamweaverによって値はいつも0 に設定されるため、いったんテキストが消えます。
値 を1.5em に設定する必要があります。これをおこなうには、次の2つの方法があります。
入力フィールドに直接1.5 と入力し、Enter/Returnキーを押して値を確定します。
マウスポインターを値のすぐ下に合わせてしばらく待つと、カーソルが双方向の矢印に変わります。その後、Ctrlキー(Windows)またはCmdキー(macOS)を押しながらマウスボタンを押し、マウスを右側に移動します。すると、値が0.1 ずつ増えていき(図20を参照)、その効果をライブビューですぐに確認できます。増やしすぎた場合は、左側に戻します。値以外の場所をクリックして、値を確定します。このテクニックは、特定の値を設定するのではなく、マウスを左右に動かしてライブビューで結果を目で見ながら判断する場合に便利です。

Shiftキーを押しながらマウスを左右に動かすと、10単位で値が変化します。修飾キーを押さずにマウスを左右に動かすと、1単位で値が変化します。
テキストを大文字に変換するために、text-transform プロパティの大文字アイコン をクリックします(図21を参照)。

プロパティ ペインの上部にある アイコンをクリックして、「ボーダー」セクションに移動します。border プロパティは、タブ付きパネルとしてグループ分けされています(図22を参照)。最初のタブで値を設定すると、要素の4つの辺すべてに同じボーダーを適用できます。その他のタブでは、top 、right 、bottom およびleft のボーダーを個別に設定できます。

下側のボーダーのタブを選択し、widthを3px 、styleを「solid 」に設定します。色を指定する必要はありません。ボーダーのデフォルト色は、現在の要素のテキストから継承されます。
この段落のスタイルの最終設定として、プロパティ ペインの上部にある アイコンをクリックし、レイアウトプロパティに移動します。パディングのビジュアルツールに移動し、左と右の値を4% 、下の値を20px に設定します(図23を参照)。

テキストの上端とゴールデンゲートブリッジの画像の間隔が大きすぎます。マージン のビジュアルツールを使って、上マージンを10px に設定し直します。
これで、段落に独自のスタイルを設定できました(図24を参照)。

ここまでの操作で、セレクターとスタイルルールの作成について十分に経験を積みました。最後に、フッターのスタイルを設定しましょう。コードビューを使って、スタイルシートの末尾にスタイルの定義を直接設定してみてください。コードは次のようになります。
完了したら、忘れずにファイルを保存します。ブラウザーでページを表示すると、図25のように見えるはずです。デザインが着々と向上してきました。

Bayside Beatサイトのスタイル設定が半分終了しました。