CSS で画像アダプティブ コンテナを実装するいくつかの方法 (要約)

CSS で画像アダプティブ コンテナを実装するいくつかの方法 (要約)

多くの場合、画像をコンテナのサイズに合わせて調整する必要があります。

1. imgタグ方式

幅と高さを 100% に設定することがすぐに考えられます。効果を見てみましょう。

<divクラス='div1'>
    <img src="./peiqi.png" alt="">
</div>
.div1 {
    幅:500ピクセル;
    高さ:400px;
    border:1px 黒一色;
}
.div1 画像 {
    /*
    幅: 100%;
    高さ:100%;
    */
}

これは通常のページです(画像がコンテナより大きい場合は、画像がコンテナを超えます)

.div1 {
    幅:500ピクセル;
    高さ:400px;
    border:1px 黒一色;
}
.div1 画像 {
    幅: 100%;
    高さ:100%;
}

これは100%ペギーです

適応の要件を満たしていますが、図のように画像が歪んでいます。画像がコンテナより小さい場合、強制的に適応させると画像が歪んでしまいます。単一画像(ロゴ、プレースホルダー画像など)であれば、デザイン案に沿って展開していただけます。しかし、インターフェースによって取得される画像が不規則になることがよくあります。一般的に、画像がコンテナよりも小さい場合、水平方向と垂直方向の中央に配置されます。
タスクを整理してみましょう:

画像の幅と高さがコンテナより小さい場合は、垂直方向と水平方向の中央に配置されます。画像の幅と高さがコンテナより大きい場合は、アスペクト比が維持され、幅または高さがコンテナで埋められます。

<divクラス='div1'>
        <img src="./peiqi.png" alt="">
    </div>
    <divクラス='div1'>
        <img src="./peiqi2.png" alt="">
    </div>
    <divクラス='div1'>
        <img src="./peiqi4.jpeg" alt="">
    </div>
.div1 {
        幅:500ピクセル;
        高さ:400px;
        border:1px 黒一色;
        表示: テーブルセル;
        垂直位置合わせ: 中央;
    }
    .div1 画像 {
        最大幅: 100%;
        最大高さ: 100%;
        表示: ブロック;
        マージン: 自動;
    }

max-height プロパティは、height プロパティが max-height より大きい値に設定されることを防ぎます。
max-height 属性は、特定の要素の最大の高さを設定するために使用されます。height 属性で設定された高さがこの属性で設定された高さより大きい場合、height 属性は無効になります。

2. 背景画像方式

.div {
        背景サイズ: 含む;
 }

background-size: contain; は、画像の幅と高さがコンテンツ領域に完全に収まるように、画像を最大サイズに拡大します。 CSS の background-size: contain; プロパティを使用すると、画像の幅と高さがコンテナーよりも小さい状況をさらに最適化できます。

上記のコード:

  div {
        高さ: 400px;
        幅: 500ピクセル;
        境界線: 1px 黒一色;
        背景繰り返し: 繰り返しなし;
        背景サイズ: 含む;
        背景の位置: 中央;
    }
    .div1 {
        背景画像: url(./peiqi1.png);
    }
    .div2 {
        背景画像: url(./peiqi2.png);
    }
    .div3 {
        背景画像: url(./peiqi4.jpeg);
    }
<div class='div1'></div>
<div class='div2'></div>
<div class='div3'></div>

もちろん、最終的にはすべて需要と製品に必要なものによって決まります。

これで、CSS でイメージ アダプティブ コンテナを実装するいくつかの方法についての記事は終了です (要約)。CSS イメージ アダプティブ コンテナに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  ピクセルを包括的なブランド体験に変えるヒント

>>:  MySQL/MariaDB で完全な Unicode をサポートする方法

推薦する

CSS3は三角形の連続拡大効果を実現します

1. CSS3の三角形は特殊効果でズームし続けます11.1 画像プレビュー 11.2 index.h...

MySQLテーブルを削除する方法

MySQL でテーブルを削除するのは非常に簡単ですが、削除コマンドを実行するとすべてのデータが消えて...

IE6 で CSS スタイルの div または li の背景のタイリングと境界の破損を解決する方法

IE6 で CSS スタイルの div または li の背景のタイリングや境界の破壊を解決するには、...

JavaScript の新しい要素トラバーサルプロパティを使用して子要素をトラバースする方法を学びます

目次1. ChildNodes属性のトラバーサル2. 要素シリーズ属性のトラバーサル以前は、chil...

nginx を最適化する 6 つの方法

1. Nginxの同時実行性を最適化する [root@proxy ~]# ab -n 2000 -c...

Ubuntu システムでタイムゾーンと時刻を変更する方法

Linux コンピュータには 2 つの時間があります。1 つはハードウェア時間 (BIOS に記録さ...

MySQLのGROUP BYステートメントを最適化する方法

MySQL で、id、a、b の 3 つのフィールドを持つ新しいテーブルを作成します。次のように、同...

Tomcat を使用して Centos 環境に SpringBoot WAR パッケージをデプロイする

戦争パッケージを準備する1. 既存のSpringBootプロジェクトを準備し、pomに依存関係を追加...

MySQL トランザクション、分離レベル、ロックの使用例の分析

この記事では、例を使用して、MySQL トランザクション、分離レベル、およびロックの使用について説明...

CSS 表示属性のインラインブロックレイアウト実装の詳細な説明

CSS 表示プロパティ注: !DOCTYPE が指定されている場合、Internet Explore...

HTML テーブル タグ チュートリアル (31): セルの幅と高さの属性 WIDTH、HEIGHT

デフォルトでは、セルの幅と高さはコンテンツに応じて自動的に調整されますが、セルの幅と高さを手動で設定...

CSS ですべての子要素を選択し、スタイルを追加する方法

方法:実際のプロジェクトを例に挙げてみましょう。 .lk-ツールバー{ .el-入力{ 幅: 169...

Nodejs 組み込み暗号化モジュールを使用してピアツーピアの暗号化と復号化を実現する詳細な説明

暗号化と復号化は、通信のセキュリティを確保するための重要な手段です。すでに多くの暗号化アルゴリズムが...

MySQL に 1,000 万件のレコードを素早く挿入する方法

面接で「MySQL に 1,000 万件のレコードをすばやく挿入するにはどうすればよいか」という質問...

Vite2.x に基づく Vue 3.x プロジェクトの実装

Vue 3.x プロジェクトの作成 npm init @vitejs/app my-vue-app ...