メディア CSS3 のメディアクエリ

Feb 17, 2017 pm 01:11 PM
css3 media

メディア クエリは主にレスポンシブ Web ページで使用されます。

1. 初期化設定:

Webページの上部のタグに次の文を挿入します:

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
ログイン後にコピー

この文はレスポンシブの初期化設定を行います。 Web ページには主に以下が含まれます:

name="viewport": 表示デバイスをビューポートとしてマークします。

width = device-width: 幅は現在のデバイスの幅と同じです。初期スケーリング比率 (デフォルト設定は 1.0);

minimum -scale: ユーザーがズームできる最小比率 (デフォルト設定は 1.0);

maximum-scale: ユーザーがズームできる最大比率 (デフォルト設定は 1.0);
ユーザースケーラブル: ユーザーが手動でズームできるかどうか (デフォルト設定は 1.0)、ユーザーがページをズームインまたはズームアウトすることを望まないためです。


2. IE ブラウザの互換性の問題を解決します:

IE ブラウザ (IE8) は HTML5 および CSS3 のメディアをサポートしていないため、IE ブラウザの互換性問題を解決するために使用される JS ファイルをロードする必要があります:

<!--[if lt IE 9]>
ログイン後にコピー
	<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
ログイン後にコピー
rree
	<script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
ログイン後にコピー

2つの<script></script>タグ内のsrc属性が指すファイルリンクアドレスは、ローカル参照にダウンロードせずに、別の場所から直接参照できるファイルです。

3. IE のレンダリング モードを最高に設定します。

現在、多くの人の IE ブラウザが IE9 以降にアップグレードされています。たとえば、IE9 ブラウザでは、多くの奇妙なことが起こります。しかし、ブラウザのドキュメント モードは IE8 です。この状況を防ぐために、IE のドキュメント モードを常に最新にするために次のコードが必要です:

<![endif]-->
ログイン後にコピー


もちろん、より強力な書き方があります:

<meta http-equiv="X-UA-Compatible" content="IE=edge">
ログイン後にコピー


このコードの後に​​ chrome=1 が追加されます。これは、Google Chrome Frame (Google Embedded Browser Framework GCF) が原因で、ユーザーのコンピュータにこの Chrome プラグインがインストールされている場合、コンピュータの IE ブラウザはバージョン要因を回避できます。組版と計算には Webkit エンジンと V8 エンジンを使用します。もちろん、ユーザーがこのプラグインをインストールしない場合、このコードにより IE ブラウザは最上位のドキュメント モードで効果を表示します。


4. CSS3 メディア メディア クエリの記述方法:

<meta http-equiv="X-UA-Compatible" content="IE=Edge,chrome=1">
ログイン後にコピー


これは、CSS ファイルでは、次の CSS コードを実行することを意味します。具体的な内容は当面は問わない。

上記のコードの画面の場合、ページを印刷するときにセリフ フォントを使用し、画面に表示するときにサンセリフ フォントを使用するようにデバイスに指示することを意味します。現在、多くの Web サイトでは画面が直接省略されているため、ユーザーが Web ページを印刷する必要性を考慮する必要がないため、別の書き方があります:

@media screen and (max-width: 960px){
	body{
		background: #000;
	}
}
ログイン後にコピー
ログイン後にコピー

厳密な思考の原則に沿って、私は個人的にはこれを使用しません書き方。

5. CSS3 メディア クエリ本文コードの組み合わせ:



レスポンシブ Web ページ レイアウトでは、メディア クエリ コードの組み合わせを継続的に使用する必要があります。主な機能は、適応された画面の幅を決定し、さまざまな状況に応じて異なる CSS を適用することです。幅のスタイル。

たとえば、画面幅が 960px の場合、Web ページの背景色を赤に変更します。

@media (max-width: 960px){
	body{
		background: #000;
	}
}
ログイン後にコピー


たとえば、画面幅が最大 960px (960px 未満) の場合、背景色を変更しますWeb ページの色を黒にします:

@media screen and (max-device-width:960px){
	body{
		background:red;
	}
}
ログイン後にコピー

画面の幅が少なくとも 960px (960px より大きい) の場合、Web ページの背景色をオレンジに変更します:

@media screen and (max-width: 960px){
	body{
		background: #000;
	}
}
ログイン後にコピー
ログイン後にコピー

より一般的なのは、次のような混合使用です。画面幅が 960px から 1200px の場合と同様に、Web ページの背景色をオレンジ色に変更します。黄色は
@media screen and (min-width:960px){
	body{
		background:orange;
	}
}
ログイン後にコピー

6. 全体的な開発アイデア:

CSS3 でメディア クエリを使用する一般的なアイデアは、さまざまなデバイスにおける Web ページの幅の範囲は 3 つ (PC、タブレット、携帯電話)、および 4 つのタイプ (PC、タブレット、中および大画面の携帯電話、小画面の携帯電話) が存在する可能性があります。もちろん、2 種類だけの場合もあります (別バージョンを開発する場合、タブレット、携帯電話、PC 側を CSS3 メディア クエリのオブジェクトとして使用する必要はありません)。また、さまざまな幅の必要なページ要素に異なる CSS スタイルを適用するためさまざまなデバイスに適応する範囲。

7. レスポンシブ Web 開発における幅の問題:

実際の開発では、通常、レスポンシブ Web ページの最大幅を設定する必要があります。最大幅が無視されると、Web ページのレイアウトが肥大化したり断片化したりして、視覚的なフラッディングが発生します。非常に低く見えるとよく言われます。

また、現在の表示デバイスでの Web ページの幅についてもお話しましょう (スペースの問題のため、産業革命については説明しません) 現在最も一般的な幅は基本的に次のとおりです: PC 側は 960 ピクセル (1920 ピクセル) 以上です。 、1600px、1440px、1280px、1140px、960px)、960pxから640px(768px、640px)までのタブレット、および640px(480px、320px)未満の携帯電話 上記の幅は以前から存在しており、Webページの幅です。ディスプレイデバイスではこの状態が長期間続くため、レスポンシブ Web ページの幅のデザインに関しては、基本的にこれらのサイズを考慮するだけで十分です。

8. メディア メディア クエリのすべてのパラメーターの概要:

メディア クエリには、次のような、一般的に使用されない関連関数も含まれています:

    width: ブラウザーに表示される幅、
  • height: ブラウザーの視覚的な高さ、
  • device-width: デバイス画面の幅、
  • device-height: デバイス画面の高さ、
  • orientation: デバイスが現在横向きモードか縦向きモードかを検出します、
  • aspect-ratio:检测浏览器可视宽度和高度的比例(例如:aspect-ratio:16/9),

  • device-aspect-ratio:检测设备的宽度和高度的比例,

  • color:检测颜色的位数(例如:min-color:32就会检测设备是否拥有32位颜色),

  • color-index:检查设备颜色索引表中的颜色(他的值不能是负数),

  • monochrome:检测单色楨缓冲区域中的每个像素的位数(这个太高级,估计咱很少会用的到),

  • resolution:检测屏幕或打印机的分辨率(例如:min-resolution:300dpi或min-resolution:118dpcm),

  • grid:检测输出的设备是网格的还是位图设备。

9.扩展——在CSS2中同样有媒体查询:

media媒体查询并不是CSS3诞生之后的专用功能,早在CSS2开始就已经支持media,比如:

在HTML文件中的标签中写入这句:

<link rel="stylesheet" type="text/css" media="screen" href="style.css">
ログイン後にコピー

以上是CSS2实现的衬线用法,href属性中写入在某单一显示设备中链接的CSS文件,但仅供入门,

如要判断移动设备是否为纵向放置的显示屏,可以这样写:

<link rel="stylesheet" type="text/css" media="screen and (orientation:portrait)" href="style.css">
ログイン後にコピー

如要让小于960px的页面执行指定的CSS样式文件,可以这样写:

<link rel="stylesheet" type="text/css" media="screen and (max-width:960px)" href="style.css">
ログイン後にコピー

当然,CSS2中的媒体查询方法放到现在并不推荐使用,最大的弊端在于这样会增加页面http的请求次数,增加页面负担,使用CSS3中的媒体查询才是目前的最佳方法。

更多CSS3中的media媒体查询相关文章请关注PHP中文网!

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

純粋な CSS3 で波の効果を実現するにはどうすればよいですか? (コード例) 純粋な CSS3 で波の効果を実現するにはどうすればよいですか? (コード例) Jun 28, 2022 pm 01:39 PM

純粋な CSS3 で波の効果を実現するにはどうすればよいですか?この記事ではSVGとCSSアニメーションを使って波のエフェクトを作成する方法をご紹介しますので、お役に立てれば幸いです。

Lenovo コンピューターのメディアのチェックをオンにできない問題を解決するにはどうすればよいですか? Lenovo コンピューターのメディアのチェックをオンにできない問題を解決するにはどうすればよいですか? Feb 12, 2024 am 08:36 AM

一部のユーザーは、Lenovo ノートパソコンを起動するときにメディアのチェックが開始できないという問題に遭遇し、混乱を招いています。このチュートリアルでは、Lenovo ラップトップでメディアのチェックが開始できない理由と解決策を説明します。原因: 1. ハードドライブの損傷: Lenovo ノートブックにハードドライブの損傷または障害がある場合、ノートブックにはメディアの確認が表示され、起動しなくなります。オペレーティング システムが破損している: Lenovo ノートブックのオペレーティング システムが破損している場合、ノートブックにはメディアの確認中が表示され、起動できなくなります。 2. コンピュータを再起動し、F12 を押して BIOS に入り、「スタートアップ」項目を選択します。

CSSを上手に使って色々な変わった形のボタンを実現(コード付き) CSSを上手に使って色々な変わった形のボタンを実現(コード付き) Jul 19, 2022 am 11:28 AM

この記事では、頻繁に登場する様々な奇妙な形のボタンをCSSを使って簡単に実現する方法を紹介しますので、ぜひ参考にしてください。

スペースを取らずにCSS内の要素を非表示にする方法 スペースを取らずにCSS内の要素を非表示にする方法 Jun 01, 2022 pm 07:15 PM

2 つの方法: 1. display 属性を使用して、要素に「display:none;」スタイルを追加するだけです。 2. Position 属性と top 属性を使用して、要素の絶対位置を設定し、要素を非表示にします。要素に「position:absolute;top:-9999px;」スタイルを追加するだけです。

CSS3でレースボーダーを実装する方法 CSS3でレースボーダーを実装する方法 Sep 16, 2022 pm 07:11 PM

CSS では、border-image 属性を使用してレースの境界線を実現できます。 border-image 属性では、画像を使用して境界線を作成できます。つまり、境界線に背景画像を追加できます。背景画像をレース スタイルとして指定するだけで済みます。構文「border-image: url (画像パス) は、内側への画像境界線の幅。開始を繰り返すかどうか;"。

テキストカルーセルと画像カルーセルも純粋な CSS を使用して実現できることがわかりました。 テキストカルーセルと画像カルーセルも純粋な CSS を使用して実現できることがわかりました。 Jun 10, 2022 pm 01:00 PM

テキストカルーセルと画像カルーセルを作成するにはどうすればよいですか?皆さんが最初に考えるのはjsを使うかどうかですが、実はテキストカルーセルや画像カルーセルも純粋なCSSでも実現できますので実装方法を見ていきましょう。

CSS3でマウスクリックで画像を拡大する方法 CSS3でマウスクリックで画像を拡大する方法 Apr 25, 2022 pm 04:52 PM

実装方法: 1. ":active" セレクターを使用して、画像上のマウス クリックの状態を選択します; 2. 変換属性とscale() 関数を使用して、画像の拡大効果を実現します。構文 "img:active {transform : スケール(x 軸倍率、y 軸倍率);}"。

CSS3でアニメーションの回転速度を設定する方法 CSS3でアニメーションの回転速度を設定する方法 Apr 28, 2022 pm 04:32 PM

CSS3 では、「animation-timing-function」属性を使用してアニメーションの回転速度を設定できます。この属性は、アニメーションがサイクルを完了する方法を指定し、アニメーションの速度曲線を設定するために使用されます。構文は「element {アニメーションタイミング関数: 速度属性値;}"。

See all articles