純粋なCSSで立体的な画像配置効果を実現するサンプルコード

純粋なCSSで立体的な画像配置効果を実現するサンプルコード

1. 要素の幅/高さ/パディング/マージンのパーセンテージ基準

要素の幅/高さ/パディング/マージンのパーセンテージを設定するときのベンチマークが何かをご存知ですか?

例えば:

。親 {
  幅: 200ピクセル;
  高さ: 100px;
}
。子供 {
  幅: 80%;
  高さ: 80%;
}
.childchild {
  幅: 50%;
  高さ: 50%;
 パディング: 2%;
  マージン: 5%;

}
<div class="parent">
        <div class="child">
            <div class="childchild"></div>
        </div>
    </div>

上記のコードでは、childchild 要素の幅はどれくらいでしょうか?高さとは何ですか?パディングとは何ですか?マージンとは何ですか?

要素の高さのパーセンテージは親要素の高さに基づいており、要素の幅、パディング、およびマージンのパーセンテージは親要素の幅に基づいています。

これで皆さんももうお分かりだと思います。ぜひ試してみてくださいね〜

面接では、アダプティブスクエアを実装するという簡単な CSS スタイルの質問によく遭遇します。原理は上記の知識に基づいています。ただ必要なだけ

#箱 {
            幅: 50%;
            パディング上部: 50%;
            背景: #000;
        }

要素の幅とパディングの基本値は両方とも親要素の幅であり、本体の幅はブラウザウィンドウであるため、この設定により、ブラウザウィンドウのサイズが変わっても正方形が適応するようになります。

2. 純粋なCSSを使用して3次元画像配置効果を実現します。

さて、本題に戻りますが、次の図に示す画像の 3 次元配置効果を実現するには、パディング、幅、高さの知識を適用する必要があります。

ちょっと見覚えがありますね。小説ソフトのおすすめ本のスタイルに似ているのでしょうか?

ここでは、まずその配置を見てみましょう。1枚の絵は水平中央で正面に配置され、他の2枚の絵は左右に少し後ろに並んでおり、立体的な配置になっています。ここでは、CSS だけに頼ってこの 3 次元効果を実現する方法を学びました。

異なる高さは、大きいまたは小さい padding-top によってサポートされます。 · 前後の効果は、Z インデックスの折りたたみ順序によって制御されます。配置は、n 番目のタイプの疑似要素 + 位置によって制御されます。

何か考えはありますか?遠回しにせず、すぐにコードを見てみましょう。

<html>
    <ヘッド>
        <スタイル>
            * {
                マージン: 0;
                パディング: 0;
            }
            。箱 {
                幅: 300ピクセル;
                高さ: 200px;
                位置: 相対的;
            }
            .img {
                幅: 自動;
                高さ: 0;
            }
            .box 画像 {
                幅: 100%;
                表示: インラインブロック;
            }
            .box .img:n番目のタイプ(1) {
                表示: インラインブロック;
                位置: 絶対;
                左: 50%;
                上位: 50%;
                パディング下部: 50%;
                変換: translate(-50%, -50%);
                zインデックス: 6;
            }
            .box .img:n番目の型(2), .box .img:n番目の型(3) {
                位置: 絶対;
                上位: 50%;
                変換: translateY(-50%);
                パディング下部: 63%;
                zインデックス: 3;
            }
            .box .img:n番目のタイプ(2) {
                右: 0;
            }
            .box .img:n番目のタイプ(3) {
                左: 0;
            }
        </スタイル>
    </head>
    <本文>
        <div class="box">
            <div class="img">
                <img src="https://febaidu.com/list/img/3ns.png" />
            </div>
            <div class="img">
                <img src="https://febaidu.com/list/img/3ns.png" />
            </div>
            <div class="img">
                <img src="https://febaidu.com/list/img/3ns.png" />
            </div>
        </div>
    </本文>
</html>

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  HTML サブタグと sup タグ

>>:  React 国際化 react-i18next の詳細な説明

推薦する

ページのスクロールバーを無効にするには、overflow: hiddenを使用します。

コードをコピーコードは次のとおりです。 html {オーバーフロー: 非表示; }体{オーバーフロー...

ダッシュボードを実装するためのjQueryプラグイン

jQueryプラグインは、参考のためにダッシュボードを実装します。具体的な内容は次のとおりです。一般...

Zabbixのインストールと展開の詳細な説明

序文Zabbix は最も主流のオープンソース監視ソリューションの 1 つです。導入自体は難しくありま...

事例を通してLinux NFSの仕組みを詳細に分析

前回の記事に引き続き、web02 サーバーを作成し、web01 サーバーと web02 サーバーの ...

Vue パッケージ化後の空白ページの解決策

1. vue-cli がプロジェクト パッケージを作成した後にページが空白になる問題の解決方法コマン...

VMware での Ubuntu Docker のインストール (コンテナ構築)

1. マインドマップ 2. コンテナの構築方法2.1 実験環境の準備(1)環境選択管理ツール: D...

HTML テーブル マークアップ チュートリアル (39): ヘッダーの明るい境界線の色属性 BORDERCOLORLIGHT

テーブル ヘッダーでは、明るい境界線の色を個別に定義できます。基本的な構文<TH ボーダーカラ...

Dockerコンテナのセルフスタートを実装する方法

コンテナの自動起動Docker は、コンテナが終了したとき、または Docker が再起動されたとき...

JavaScript における this ポイントの問題の詳細な説明

要約する地球環境 ➡️ ウィンドウ通常関数 ➡️ ウィンドウまたは未定義コンストラクター ➡️ 構築...

MYSQL データベースの基礎 - 結合操作の原理

結合では、ネスト ループ結合アルゴリズムが使用されます。ネスト ループ結合には 3 つの種類がありま...

VMware15 の CentOS7 インストールの詳細なプロセスとよくある問題 (画像とテキスト)

1. インストールパッケージの準備VMware-player-15.0.4-12990004、非商...

将来人気が出るであろういくつかのナビゲーション方向

<br />今は情報爆発の時代であるだけでなく、サービス爆発の時代でもあります。それはす...

Zen Coding 簡単で素早いHTMLの書き方

禅コーディングテキストエディタプラグインです。 Zen Coding を使用するテキスト エディター...

MySQL データベース SELECT クエリ式分析

データ管理の大部分は検索であり、SELECT はその大部分を占めています。 SELECT selec...

MySQL 5.7.11 zip インストールと設定方法のグラフィックチュートリアル

1. MySQL 5.7.11 zipインストールパッケージをダウンロードするこのマシンはwin7 ...