Webのレイアウトは常に制限されていますが、意味を考慮した形式で簡単にコンテンツを簡単に表示できるようにすることに本当に専念していませんでした。
「90年代」に戻って、Webが最初に保留したときに、グリッド上のコンテンツをレイアウトするために使用されたデザイナーが、ブラウザで同じ結果を得るための唯一の方法がテーブルを使用することでした。セルをマージすると複雑になりました ウェブサイトのレイアウト しかし、これはアクセシビリティとSEOで大混乱を鳴らしました。早送りと今日は、浮動小枠、柔軟な箱などでコンテンツを配置する方法のすべての方法があります。
CSS3は本当にWebの機能を前進させ、2014年以降 CSSグリッドレイアウト 。これは現在75パーセントブラウザのサポートを持っているので、それはそれを真剣に考慮した時が来た時点になっています。 帯状の基礎6フレームワーク ボードに乗って、そのグリッドに電力を供給するために使用しています。
このチュートリアルでは、完璧な方法を示す方法を示す雑誌スタイルの機能の作成に焦点を当てます。 レスポンシブウェブデザイン 中小スクリーンサイズのために。
のスタートフォルダからファイル 'grid1.html'を開きます。 プロジェクトファイル 。 HTMLレイアウトには5つのDIVタグがあり、単に項目1-5としてCSSクラスとして名前が付けられています。これらはグリッドに配置されたコンテンツになります。これをラップするコンテナは、グリッドを定義します。これにより4つの列があります。
divクラス= "コンテナ"&gt。
ヘッドセクションで見ることは、「コンテナ」が行の自動高さを持つグリッドとしてレイアウトされるように言われていることがわかります。列は、各セットをブラウザの25パーセントに設定されています。 。ブラウザでこれを確認して、各項目が自動的に次の利用可能なグリッド位置に割り当てられることがわかります。
。コンテナ{
表示:グリッド;
grid-template-rows:auto;
グリッドテンプレート列:繰り返し(4,25%)。
'grid2.html'ファイルを見てください。 'item1'と 'item2'を除く最初のファイルと同じです。 1つ目は1行目に配置され、行2の前に終了します。列は1で始まり、3で終了して2列になります。 2番目の列3から始まり、次の2列を取ります。残りの項目は次の利用可能なグリッドスロットを埋めます。
.item1 {
グリッド行スタート:1;
グリッド行エンド:2;
グリッド列始動:1;
grid-column-end:3;
}
.item2 {
グリッド行スタート:1;
グリッド行エンド:2;
グリッド列始動:3;
グリッド列終了:5;
'grid3.html'を開き、HTMLの本文を見てください。ヘッダー、サイドバー、メインコンテンツセクションとフッターが付いているレイアウトがあることがわかります。これが置かれたときに何が起こるかを確認するには、コンテンツにテキストを追加できます。グリッドはテンプレート機能を使用してこれらのセクションをレイアウトにします。
divクラス= "コンテナ"&gt。
コンテナのCSSを見てください。それはまたグリッドとして定義されます。トップ行は200ピクセルになりますが、中央は自動的に設定され、最後の行は100ピクセルになります。列は33セントワイドに設定され、残りをオートフィルするように設定されています。テンプレートには、ヘッダーが両方の列を埋めます。次の行は、最初の列のサイドバーと次の内容になります。フッターは両方に渡って行きます。
。コンテナ{
表示:グリッド;
grid-template-rows:200px Auto 100px。
グリッドテンプレート列:33%AUTO;
グリッドテンプレート - エリア:
「ヘッダーヘッダー」
「サイドバーコンテンツ」
「フッターフッター」
クラスをテンプレートにリンクするには、ここに示すコードがこれを定義します。各グリッド領域に名前が付けられ、リンクが作成されます。コンテンツはここには表示されませんが、 'grid3.html'文書にあります。グリッドのレイアウトを見るためにブラウザでこれを見てください。 2つの列が定義されているため、テンプレートには各反転カンマの2つの領域が必要です。
。ヘッダー{
グリッドエリア:ヘッダ;
}
。サイドバー{
グリッドエリア:サイドバー;
}
.footer {
グリッドエリア:フッター;
'grid3.html'を応答的にするために、メディアクエリが挿入され、最上段は200パーセントに保たれ、残りの行は自動的にサイズされます。列は1つだけありますが、全幅なので、テンプレートにはレイアウトを定義するために各反転カンマに1つのワードがあります。これらはHTMLをシフトせずに簡単に並べ替えることができます。
@mediaスクリーンと(最大幅:699px){
。コンテナー{
表示:グリッド;
grid-template-rows:200px Auto;
グリッドテンプレート列:100%。
グリッドテンプレート - 領域: "ヘッダ"サイドバー ""コンテンツ ""フッター ";
}
[index.html]を開く - デザイン要素のCSSのいくつかを持つように、コンテンツのすべてのHTMLが既に作成されています。このグリッドをヘッドセクションのスタイルタグに追加します。そうすることで、各セクションのテンプレートを使用して3列グリッドを作成します。空のグリッドセクションのフルストップに注意してください。
.Container1 {
幅:80%。
マージン:0自動車;
表示:グリッド;
grid-template-rows:auto;
グリッドテンプレート - 列:33.3%33.3%AUTO;
Grid-Template-Area: "ヘッダヘッダヘッダ" "Standfirst Standfirst" "..。。第1条「フォーカスプールプルコート」「第2条第2条」。
前のステップと同様に、ヘッダーはテンプレートとリンクします。ヘッダはグリッドの3列すべてにわたるように言われ、その後、スタンドフルストは2列の列を取り、左側に空の列を持ちます。ブラウザをチェックすると、残りのコンテンツが次の利用可能なスペースをオートフィルするため、その列が入力されます。ただし、それがすべて設定されている場合はこれを行いません。
。ヘッダー{
グリッドエリア:ヘッダ;
}
.standfirst {
グリッドエリア:スタンドリースト。
これで最初の記事、プル引用符と焦点画像を設計に入れます。プル引用符と画像は同じ行の並んでいます。この段階で、第2条は、標準の隣にあるグリッド上の最初の利用可能なスペースを取得していません。
.ARTILLE1 {
グリッドエリア:第1条;
}
.pullQuote {
グリッドエリア:プルコート;
}
.FOCUS {
グリッドエリア:焦点;
テキスト整列:中央;
2番目の記事のCSSを追加することで、最初のグリッドをすべて正しく配置できます。ブラウザでこれを見ると、レイアウトが背景画像と連携し、デザイナーが大きな背景画像を中心にしている雑誌で見られる種類のレイアウトを作成します。
.ARTILLE2 {
グリッドエリア:第2条;
列ギャップ:65px;
列数:2;
2番目のグリッドを起動する前に、2つのグリッドが必要な理由があるのは不思議です。その理由は、このグリッドが白い全幅の背景を持つことになるので、このCSSは2番目のグリッドをラップします。これは、このセクションにデザインの2ページ目の感覚を与えることです。
。WhiteBG {
パディング:100px 0;
背景色:#ddd;
2番目のグリッドは最初のものよりも簡単です。行に自動高さを持つ3つの列があります。コンテンツはそれぞれ列を埋めるつもりですので、テンプレート領域を定義する必要がない。ただし、タブレット設計が追加されると、これは2列に切り替える必要があるため、リフローが必要であり、名前は重要です。
.Container2 {
幅:80%。
マージン:0自動車;
表示:グリッド;
grid-template-rows:auto;
グリッドテンプレート - 列:33.3%33.3%AUTO;
グリッドテンプレート - エリア: "IMG1 IMG2第3条";
2番目のグリッド内の各CSSクラスは、グリッドテンプレートで定義されているように、関連する列とリンクするように指示されます。記事のテキストの色は、このセクションの軽い背景に目立つように目立つように変更されています。フッターのみが完了するだけで、雑誌スタイルのレイアウトの設計はほぼ整っています。
.img1 {
グリッドエリアIMG1;
}
.img2 {
グリッドエリアIMG2;
}
.ARTILLE3 {
グリッドエリア:第3条;
カラー:#333;
仕上げの仕上げは画面を横切って全幅のDIVを配置します。これは黒色で埋められ、テキストはただ中心にあります。デザインのデスクトップバージョンはデスクトップ版を完成させますが、画面を1200ピクセルの下に移動し、サイトが壊れ始めます。
.footer {
背景色:#000;
カラー:#999;
テキスト整列:中央;
パディング:50px 20px 100px;
ブラウザの幅が1200ピクセル未満の場合、デザインの後にメディアクエリが表示されます。ステップ17と18のコードは、コメントがあるブラケットの内側に配置されます。これは、両方のグリッドのレイアウト構造を変更する場合です。
@media画面と(最大幅:1200px){
/ *ここにコード* /
最初のグリッドは、3つの列ではなくブラウザの全幅を埋めるように設定されています。このスクリーンサイズで背景画像とともに適合するので、セクションの順番がテンプレートに配置されます。
.Container1 {
幅:100%。
grid-template-rows:auto;
グリッドテンプレート列:50%50%。
Grid-Template-Area: "ヘッダーヘッダー" "Standfirst Standfirst" "artificate1" "PULLQUOTE PULLQUOTE" "ARITION2フォーカス";
}
.ARTILLE2 {
列数:1;
2番目のグリッドは、ブラウザの全幅と2つの列を追加するようにサイズ変更されています。画像は、テキストの上の並びに並んで配置されているので、ディスプレイにきれいに収まるようにします。ブラウザを1200ピクセルの幅の下にサイズ変更することで、このレイアウトをブラウザにテストできます。
.Container2 {
幅:100%。
マージン:0自動車;
grid-template-rows:auto;
グリッドテンプレート列:50%50%。
グリッドテンプレートエリア: "IMG1 IMG2" "第3条第3条";
769px未満の幅を持つブラウザは、最後のステップで追加されたコードを取得します。ここで実行する必要があるのは、コンテンツをより小さなスペース内で正しく表示できるように、各グリッドに単一の列レイアウトがあることを確認します。
@mediaスクリーンと(最大幅:768px){
/ *最終ステップコード* /
これで、最初のグリッドはブラウザの幅の100パーセントの単一の列に設定され、セクションの順序がテンプレート領域に追加されます。ページの最初の部分がモバイル画面にどのように取り組んでいるかを確認してください。
.Container1 {
幅:100%。
grid-template-rows:auto;
グリッドテンプレート列:100%。
グリッドテンプレート - エリア:「ヘッダ」「スタンドフルスト」「第1条」「プルコート」「焦点」「第2件」;
ここで、2番目のグリッドも単一の列を埋めるようにされ、セクションのレイアウトが定義されています。完成したデザインを保存して、CSSグリッドのフルレイアウト機能と、異なる幅のコンテンツを並べ替えるのが簡単なことを確認するために、異なるサイズの画面でそれを表示します。
.Container2 {
幅:100%。
マージン:0自動車;
grid-template-rows:auto;
グリッドテンプレート列:100%。
グリッドテンプレート - 「IMG1」「IMG2」「第3項」;
この記事はもともとCreative Web Design Magazine Web Designerに公開されていました。購入 問題271 または 申し込む 。
関連記事:
現代のソフトウェアは、非常に強力ですべての包括的なものになる可能性があります。 Mayaは違う結果に到達するのに役立つツール、コマンド..