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 をサポートする方法

推薦する

Linux の検索ツールの代替となるフレンドリーなツール

find コマンドは、指定されたディレクトリ内のファイルを検索するために使用されます。引数の前の文字...

HTMLのposition属性の使い方(4種類)の詳しい説明

位置の 4 つのプロパティ値は次のとおりです。 1.相対的な2.絶対3.修正4.静的これら 4 つの...

HTMLの基礎を詳しく解説(第2部)

1. リストリスト ulコンテナーには、一貫した構造とスタイルを持つテキストまたはグラフの形式が読...

h1、h2、h3タグを適切に使用する

Web ページを作成する過程では、<h1>、<h2>、<h3> ...

自分のブログを構築しながら学んだこと

<br />ブログを始めて 1 年、私はブログの内外で多くのことを個人的に学びました。ま...

モバイル端末の適応により、px は自動的に rem に変換されます。

まずpostcss-pxtoremをインストールします: npm install postcss-p...

uniapp アプレットでウォーターフォール フロー レイアウトを実装するためのアイデアとコード

1. はじめに今、ウォーターフォールフローについて書くことは、古い内容の焼き直しと見なされますか?気...

CSS3はリストの無限スクロール/カルーセル効果を実現します

効果プレビューアイデア現在のリストを最後の項目までスクロールし、すぐに最初の項目に戻ります。問題1....

JavaScript クリップボードの使用法の詳細な説明

(1)はじめに: clipboard.js は、テキストをクリップボードにコピーする機能を実装する軽...

Zookeeperスタンドアロン環境とクラスタ環境の構築

1. 単一マシン環境の構築# 1.1 ダウンロードZookeeper の対応するバージョンをダウンロ...

2つのボールが交差する粘着効果を実現するCSSサンプルコード

これは純粋に CSS のみを使用して作成されたエフェクトです。簡単に言うと、このエフェクトは画像処理...

mysql IS NULL インデックスケースの説明を使用する

導入MySQL の SQL クエリ ステートメントで is null、is not null、!= ...

Vue テンプレートのコンパイルの詳細

目次1. 解析する1.1 傍受のルール1.2 傍受プロセス部分1.3 パーサーの概要2. 最適化する...

jsのイベントオブジェクトを深く理解しましょう

JS でよく使用されるイベントは次の通りです。ページイベント: load;フォーカス イベント: フ...

CSSでスペースを処理する方法

1. 宇宙のルールHTML コード内の空白は通常、ブラウザによって無視されます。 <p>...