ホームページ > ウェブフロントエンド > CSSチュートリアル > CSS3で画像バレルレイアウトを実装するにはどうすればよいですか? (コード付き)

CSS3で画像バレルレイアウトを実装するにはどうすればよいですか? (コード付き)

青灯夜游
リリース: 2020-07-14 10:00:58
転載
2928 人が閲覧しました

この記事では、コード例を通して、CSS3 を使用して画像バレル レイアウトを実装する方法を紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。

CSS3で画像バレルレイアウトを実装するにはどうすればよいですか? (コード付き)

#高さは同じで幅が異なるレイアウトをバレル レイアウトといいます。これには、各行の画像の一貫性が高く、各行の画像が完全に埋め込まれているという、いくつかの特徴があります。

アイデア:

1. コンテナーの flex レイアウト

2. 画像の高さを設定し、改行を超えます
3. flex-grow を設定します: すべての画像の場合は 1; 行全体を埋めるには
4. 画像変形の問題を解決するには、すべての画像に対して object-fit: cover; を設定します
5. コンテナ: 疑似クラス設定後 flex-grow: 9999 ; そして、この値は、最後の行の画像の数が少ない場合に問題を解決するのに十分な大きさです。それでも行全体がいっぱいで、平坦で長すぎます

コードは次のとおりです。そして使用します:

<!DOCTYPE html>
    <script>
        window.navigator.appVersion.indexOf(&#39;Trident&#39;) != -1 && alert(&#39;请用谷歌或火狐新版打开!&#39;);
    </script>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <style type="text/css">
        *{
            margin: 0;
        }
        body{
            padding: 50px 0;
            overflow-x: hidden;
        }
        .wrap{
            display: flex;
            flex-wrap: wrap;
        }
        .wrap img{
            margin: 3px;
            padding: 5px;
            height: 200px;
            background: #ccc;
            flex-grow: 1;
            object-fit: cover;
            transition: .3s;
        }
        .wrap:after{
            display: block;
            content: &#39;&#39;;
            flex-grow: 9999;
        }
        .wrap img:hover{
            transform: scale(1.2);
            box-shadow: 0 0 20px #fff;
            z-index: 9999;
        }
    </style>
</head>
<body>
    <div class="wrap"></div>
    <script>
        var wrap = document.querySelector(&#39;.wrap&#39;);
        var src = [&#39;img/1.jpg&#39;,&#39;img/2.jpg&#39;,&#39;img/3.jpg&#39;,&#39;img/4.jpg&#39;,&#39;img/5.jpg&#39;]
        for(var i=0; i<Math.floor(Math.random()*10+30); i++){
            var img = document.createElement(&#39;img&#39;);
            img.src = src[Math.floor(Math.random()*5)];
            wrap.appendChild(img);
        }
    </script>
</body>
</html>
ログイン後にコピー

レンダリング:


CSS3で画像バレルレイアウトを実装するにはどうすればよいですか? (コード付き) ##さらにクールな CSS3、html5、JavaScript 特殊効果コードがすべて含まれています:

js 特殊効果コレクション

!

以上がCSS3で画像バレルレイアウトを実装するにはどうすればよいですか? (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:cnblogs.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート