この記事では、HTML5 レスポンシブ (アダプティブ) Web デザインの実装を紹介し、次のように全員と共有します。
ステップ 1: ビューポート メタ タグの行を Web ページ コードの先頭に追加します。
<meta name=viewport content=width=デバイス幅, 初期スケール=1 />
viewport は Web ページのデフォルトの幅と高さです。上記のコード行は、Web ページの幅がデフォルトで画面の幅 (width=device-width) と元のスケーリング率 (initial-scale) に等しいことを意味します。 =1) は 1.0、つまり Web ページの初期サイズが画面の領域の 100% を占めます。
IE9 を含むすべての主要なブラウザーがこの設定をサポートしています。古いブラウザ (主に IE6、7、8) の場合は、css3-mediaqueries.js を使用する必要があります。
<!--[IE 9 の場合]> <script src=http://css3-mediaqueries-js.googlecode.com/svn/trunk/css3-mediaqueries.js></script> <![endif]-- >
ステップ 2: (注) 絶対的な幅、フォント サイズは使用しないでください。
幅:自動; / 幅:XX%;
ステップ 3: (注) フォント サイズ
フォント サイズはページのデフォルト サイズ (16 ピクセル) の 100% です。
フォントには絶対サイズ PX を使用せず、相対サイズ REM を使用してください
html{font-size:62.5%;}
本文 {font:normal 100% Arial、sans-serif;font-size:14px; }
ステップ 4: フローのレイアウト
流動的なレイアウトの意味は、各ブロックの位置が固定されておらず、浮動していることです。
.left{ 幅:30%; 浮動小数点:左} .right{ 幅:70%; }
利点は、幅が小さすぎて 2 つの要素を収容できない場合、次の要素が水平方向にオーバーフローすることなく前の要素の一番下まで自動的にスクロールするため、水平スクロール バーの表示が回避されることです。
ステップ 5: CSS のロードを選択する
アダプティブ Web デザインの中核は、CSS3 によって導入された Media Query モジュールです。画面幅を自動的に検出し、対応する CSS ファイルを読み込みます
<link rel=stylesheet type=text/css media=screen および (max-device-width: 600px) href=style/css/css600.css />
上記のコードは、画面幅が 600 ピクセル (max-device-width: 600px) 未満の場合、css600.css ファイルをロードすることを意味します。
画面幅が 600 ピクセルから 980 ピクセルの間の場合は、css600-980.css ファイルをロードします。
<link rel=stylesheet type=text/css media=screen および (min-width: 600px) および (max-device-width: 980px) href=css600-980.css />
また (非推奨): html タグを含む CSS ファイルをロードするだけでなく、既存の CSS ファイルに CSS ファイルをロードすることもできます。
@import url(css600.css) 画面と (max-device-width: 600px);
ステップ 6: CSS @media ルール
@media 画面と (max-device-width: 400px) { .left{ float:none;} }
画面が400より小さい場合、左でフローティングを解除します
ステップ 7: 画像の適応
レスポンシブ Web デザインでは、画像の自動スケーリングも実装する必要があります。
画像、オブジェクト {最大幅: 100%;}
古いバージョンの IE は最大幅をサポートしていないため、次のように記述する必要があります。
img {幅: 100%;}
Windows プラットフォームで画像を拡大縮小すると、画像の歪みが発生する場合があります。現時点では、IE 独自のコマンドを使用してみることができます。
img { 幅:100%; -ms-補間モード: バイキュービック;}
または、js--imgSizer.js を使用します。
addLoadEvent(function() { var imgs = document.getElementById(content).getElementsByTagName(img); imgSizer.collate(imgs); });
注: 可能であれば、さまざまな画面サイズに応じてさまざまな解像度の画像をロードすることが最善です。
簡単な操作:
<style type=text/css> img{ max-width:100%;} video{ max-width:100%; height:auto;} ヘッダー ul li{ list-style:none; type:none; margin-right:10px;} ヘッダー select{display:none;} @media (max-width:960px){ header ul{display:none;} ヘッダーselect{ display:inline-block;} } </style> <body> <header> <ul> <li><a href=# class=active>ホーム</a></li> <li><a href =#>AAA</a></li> <li><a href=#>BBB</a></li> <li><a href=#>CCC</a></li> <li> ><a href=#>DDD</a></li> </ul> <select> <option class=selected><a href=#>ホーム</a></option> <option value=/AAA>AAA</option> <option value=/BBB>BBB</オプション> <オプション値=/CCC>CCC</オプション> <オプション値=/DDD>DDD</オプション> </select> </header> </body>
以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。また、VeVb Wulin Network をご支援いただければ幸いです。