最近では、モバイルデバイスがますます普及しており、ユーザーがスマートフォンやタブレットを使用して Web を閲覧することがますます一般的になっています。しかし、従来の固定型ページはモバイル端末ではうまく表示できません。そこで、イーサン・マルコットはレスポンシブ Web デザインの概念を提案しました。 レスポンシブ Web デザインの英語名は Responsive Web Design で、略称は RWD です。 私は図書館から O'REILLY の「Head First Mobile Web」という本を借りました。この本では、RWD を行うためのいくつかのテクニックが説明されていました。 今日学んだことは2つあります。 1. メディア情報を使用して画面サイズを決定する 2. 幅などのサイズ関連の情報を宣言するために以前使用されていたピクセルをパーセンテージに置き換えます。 今日の実験の結果を見てみましょう (この記事の最後に実験例のダウンロード リンクがあります)。 ビデオ: ページを全画面で表示する場合 ブラウザを狭めてモバイルデバイスを模倣する場合: どうやってやるんですか? まず、CSSファイル内のメディアステートメントを使用します Web ページをさまざまなデバイス サイズに対応させたい場合は、事前にそれぞれのサイズを準備する必要があります。たとえば、通常の PC モニターでは、次のように 3 列で表示されます。 スマートフォンなどのモバイルデバイスでは、次のようにストリーミングで配信する必要がある場合があります。 明らかに、両者の CSS 配分は異なります。上図の 3 列表示では、左側と右側の列をそれぞれ必要な方向にフロートさせる必要がありますが、下図のフローレイアウトでは、ブロックが下方向に連続して表示されます。したがって、少なくとも異なる CSS 分布ごとに、異なる戦略が必要であることがわかります。これで、2 つの異なる CSS ファイルを編集し、<link> ディレクティブを使用してインポートできるようになりました。ただし、@media ステートメントを使用して論理的な判断を実行することもできます。以下のように: @media screen and ( min-width :480px){/*css style*/ その中で、スクリーンは多くの種類のメディアの 1 つであり、その他の一般的なメディアの種類には印刷が含まれます。最小幅はメディアの機能の 1 つです。メディアには論理的な判断を下すのに役立つ多くの機能があり、一般的な機能としてはモノクローム、最大幅などがあります。 この @media ステートメントの助けを借りて、if-else と同様の論理的判断を行うことができます。たとえば、例に示されている 2 つの異なる状況は、次のステートメントを使用して判断されます。 コードをコピー コードは次のとおりです。/************デスクトップ構造 CSS*************/ @media スクリーンと (最小幅:481px) { /*デスクトップブラウザで表示されるウェブページの CSS*/ } /************モバイル構造 CSS*************/ @media スクリーンと (最大幅:480px) { /*モバイルブラウザで表示されるウェブページの CSS*/ } この文では、「and」は論理積を表します。論理和を表現したい場合は、「,」を使用できます。たとえば、 @media print 、 screen and (monochrome)のようになります。{/**/ これは、「印刷デバイス」または「モノクロ画面デバイス」上にある場合に、中括弧内の CSS 設定が使用されることを意味します。 次に、寸法に関連付けられたピクセル単位をパーセンテージに置き換えます。 初めてデザインするときは、パーセンテージに合わせてデザインしてください。 また、従来のウェブページ設計方法に従って、まず各領域のピクセルを決定することもできます。たとえば、メイン領域が 460 ピクセルの場合、ウェブページ全体の幅を 960 ピクセルに設定すると、メイン領域の幅は 460/960 = 47.92% になります。この変換方法は、ウェブページを再構築するときに使用できます。 【テスト例ダウンロード】 |
<<: 詳細なアイデアを備えたシンプルな計算機の HTML 実装
>>: MySQLはインデックスプッシュダウンを数秒で理解するのに役立ちます
Baota PanelのPHP7.3バージョンがZipArchiveをサポートしていないため、プログ...
質問js を使用して CSS 疑似クラス スタイルを変更するにはどうすればよいでしょうか?しかし、j...
この記事では、例を使用して、MySQL ストアド プロシージャの概念、原則、および一般的な使用法につ...
この記事の例では、参考までにvueタイムラインコンポーネントの具体的な実装コードを共有しています。具...
mysqlのrootアカウント、普段はlocalhostか127.0.0.1で接続しています。会社の...
1. 文書化ルール1. 大文字と小文字が区別されます。 2. 属性値は引用符(一重引用符または二重引...
1: 速度と読み込み方法の違いdivとtableの違いは速度ではなく、読み込み方法です。速度はネット...
今日、Dockerfile を使用してイメージを作成したときに問題が発生し、イメージの実行後にコンテ...
1. 単一の矢印への複数の呼び出し単一の矢印を実装したら、二重矢印を実装するのは簡単です。上では、単...
目次1. 親が子コンポーネントに値を渡す2. 子コンポーネントが親コンポーネントに値を渡す3. 子コ...
Mysqlトランザクション操作の失敗を解決する方法トランザクションの原子性: トランザクションは、デ...
適切な設定を行うことで、Linux ユーザーにパスワードを定期的に変更させることができます。パスワー...
1. どの 3 つの形式ですか?それぞれ、gif、jpg、png です。画像ファイルを最適化すること...
問題: vue-cil3 は、`--fix` オプションで修正できる可能性のある警告とともに実行され...
目次1. 仮想ホスト1.1 仮想ホストの概念1.2 仮想ホストタイプ2. IP仮想ホストに基づく2....