HTMLのimgタグで画像の中心部分だけを表示する方法(3つの方法)

HTMLのimgタグで画像の中心部分だけを表示する方法(3つの方法)

HTML の img タグで画像の中心を表示する方法は、現在 3 つあります。ここで記録しておきます。

最初の方法: CSS clip:rect(top right bottom left); を使用する。次のように position: absolute: と一緒に使用する必要がある。

<img src="upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg"
     スタイル="位置: 絶対;クリップ: rect(0px,250px,200px,50px);幅: 300px;高さ: 200px">

画像の幅と高さを設定することは、実際の幅と高さに比例して画像を拡大縮小し、次に rect メソッドを使用して画像の切り取り範囲を設定することと同じです。

- 2番目の方法: img の背景属性を使用する:

<スタイル タイプ="text/css">
        画像 {
            background-image: url(upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg);//背景画像を設定します。background-repeat: no-repeat;//背景画像は1回だけ表示されます。
            背景添付: スクロール;//
            background-position: -50px 0px;//背景画像のオフセットを設定します。この -50 は、背景全体が左に 50 オフセットされ、画像の中心が表示されることを意味しますbackground-size: 300px 200px;////背景画像のサイズを設定します。これは、比例して拡大縮小される画像の実際の幅と高さに相当しますbackground-color: transparent;//
            幅: 200px;//
            高さ: 200px;//
        }
    </スタイル>

背景を使用して、画像表示の中心位置を制御します。画像の実際の幅と高さに応じて比例して拡大縮小するように背景を設定し、背景の動きをオフセットして画像の幅と高さを制御する必要があります。画像のsrcは設定できないことに注意してください。imgタグでsrcが設定されていない場合、表示された画像に灰色の境界線が表示され、それを削除する方法はありません。border:0pxは効果がありません。以前の解決策は、srcにデフォルトの完全に透明な画像を配置することで、問題を解決しました。

3 番目の方法: div に img を含め、div の overflow: hidden; を使用して制御します。より柔軟に使用できます。

<div スタイル="幅: 100px;高さ: 100px;オーバーフロー: 非表示">
<img src="upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg" スタイル="position: relative" id="img_id">
</div>
<スクリプト>
    var img = document.getElementById("img_id");
    var image = 新しい Image();
    var realWidth = 0; //画像の実際の幅を保存します var realHeight = 0; //画像の実際の高さを保存します //画像の幅と高さを取得します image.src = "upload/2022/web/77b8b5ca-11d3-4307-9a93-c12df5eb1a35.jpg";
    //読み込み成功の処理 image.onload = function () {
        realWidth = image.width; //画像の実際の幅を取得します。realHeight = image.height; //画像の実際の高さを取得します。//imgの幅と高さを画像の実際の幅と高さに比例させ、オフセットします。if (realWidth > realHeight){
            img.width = (100/realHeight)*realWidth; // 比例スケーリング幅 img.height = 100; // div の高さと一致する img.style.left = '-' + ((100/realHeight)*realWidth-100)/2 + 'px'; // 画像の相対位置オフセットを img タグの幅と高さの半分に設定する }else if (realWidth < realHeight){
            img.width = 100; // div と同じ高さ img.height = (100/realWidth)*realHeight; // 比例スケーリングの高さ img.style.top = '-' + ((100/realWidth)*realHeight-100)/2 + 'px'; // 画像の相対位置オフセットを img タグの高さと幅の半分に設定 }else {
            画像の幅 = 100;
            高さ = 100;
        }
    };
    //画像読み込み失敗の処理 img.onerror = function () {
        画像サイズ: 1000x400px;
        画像の幅 = 100;
        高さ = 100;
    }
</スクリプト>

上記のコメントは非常に明確です。重要なことは、div がサイズを制御し、img タグが div のサイズに応じて独自のサイズを調整することです。画像の中央部分を表示するためにオフセットが行われます。個人的には、3番目の方法の方が良いと思います。

上記は、HTMLでimgタグ内の画像の中央のみを表示する方法(3つの方法)を紹介しました。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

<<:  MySql マスタースレーブレプリケーションの実装原理と構成

>>:  WIN10 システムと Docker 内部コンテナ IP 間の通信方法

推薦する

文字列から指定された文字を削除または抽出する JavaScript メソッド (非常によく使用されます)

目次1. 部分文字列() 2. サブストラクチャ() 3.インデックス() 4.最後のインデックス(...

Linux 7.6 バイナリに MySQL 8.0.27 をインストールする詳細な手順

目次1. 環境整備1.1 オペレーティング システムのバージョン1.2 ディスク容量1.3 ファイア...

nginx で複数のフロントエンド プロジェクトをデプロイするいくつかの方法

nginx を使用して 1 つのサーバーに複数のフロントエンド プロジェクトをデプロイする 3 つの...

WebpackはCSSファイルを読み込み、その設定方法

webpackはCSSファイルとその設定をロードします複数の CSS ファイルを作成した後、HTML...

docker のインストールが完了し、bridge-nf-call-iptables が無効であると報告される問題を解決します

Centos マシンで docker のインストールが完了したら、docker info コマンドを...

JavaScript の BigIn 関数の共通プロパティをまとめます

目次1. 概要2. 属性1. 数学演算子2. 比較演算子3. ブール演算結論1. 概要BigInt ...

インライン要素スパンの最小高さの定義

span タグは HTML ウェブページを作成するときによく使用されますが、このタグの使い方がよくわ...

シェルを使用してMySQLデータバックアップスクリプトを作成する

アイデアそれは実はとても簡単ですシェル スクリプトを記述して、mysql の mysqldump を...

Docker 可視化グラフィックツール portainer の詳細な説明

目次1. ポーテナーの紹介2. Portainer アーキテクチャの概要3. Portainerのイ...

Alibaba Cloud Ubuntu 16.04 が IPSec サービスを構築

IPSec の概要IPSec (インターネット プロトコル セキュリティ): ネットワーク層と適用さ...

MySQL 入門 - 概念

1. それは何ですか? MySQL は最も人気のあるリレーショナル データベース管理システムです。W...

チェックボックスとラジオボタンの配置を実装する方法

ブラウザによって動作が異なるだけでなく、フォントやテキスト サイズによっても動作が異なります。フォー...

Zabbix Agent2を使用してOracleデータベースを監視する方法

概要zabbix バージョン 5.0 以降では、zabbix-agent2 という新しい機能が追加さ...

Ubuntu 20.04 ベスト設定ガイド (初心者向け)

1. システム構成1. sudoパスワードをオフにするsudo コマンドを使用するたびにパスワード...

HTML テーブルの行間隔を変更する方法の例

HTML テーブルを使用する場合、行間隔を変更する必要がある場合がありますが、余白、パディング、折り...