CSS ワールド - コード実践: 画像の Alt 情報の表示

CSS ワールド - コード実践: 画像の Alt 情報の表示

ただし、デフォルトの src を持つ <img> 要素を使用してスクロール読み込み効果を実現すると、次のようなエクスペリエンスの問題が発生する可能性があります。JavaScript の読み込みが遅い場合、ページに情報のない真っ白な白い画像領域のパッチが表示される可能性が高くなり、ユーザーにはコンテンツが何であるかがわかりません。
alt 属性は説明情報を提供できますが、視覚効果が乏しいため非表示になっています。画像が読み込まれる前に alt 情報を表示できます。

<!DOCTYPE html>
<html lang="ja">

    <ヘッド>
        <メタ文字セット="UTF-8">
        <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
        <meta http-equiv="X-UA-compatible" content="ie=edge">
        <title>CSS ワールド - コード実践 - 画像の代替情報のプレゼンテーション</title>
        <スタイル>
            /* スクロール読み込み効果 CSS */
            /* 画像 {
                可視性: 非表示;
            }

            画像[src] {
                可視性: 可視;
            } */

            画像 {
                表示: インラインブロック;
                幅: 180ピクセル;
                高さ: 100px;
                /* Firefox の代替テキストを非表示にする */
                色: 透明;
                位置: 相対的;
                オーバーフロー: 非表示;
            }

            img:not([src]) {
                /* Chrome の代替テキストと銀色の枠線を非表示にする */
                可視性: 非表示;
            }

            画像::前{
                /* ライトブルーの背景 */
                コンテンツ: "";
                位置: 絶対;
                左: 0;
                幅: 100%;
                高さ: 100%;
                背景色: #f0f3f9;
                可視性: 可視;
            }

            画像::後{
                /* 黒い alt 情報バー */
                コンテンツ: attr(alt);
                位置: 絶対;
                左: 0;
                下部: 0;
                幅: 100%;
                行の高さ: 30px;
                背景色: rgba(0, 0, 0, .5);
                色: 白;
                フォントサイズ: 14px;
                変換: translateY(100%);
                /* トランジションアニメーション効果を追加する*/
                遷移: 変換 .2s;
                可視性: 可視;
            }


            img:hover::after {
                変換: translateY(0);
            }

        </スタイル>
    </head>

    <本文>
        <div style="width: 200px;height: 200px;background: blanchedalmond;overflow: auto;">
            <!-- スクロール読み込み効果 HTML: -->
            <!-- <画像> -->
            <img alt="図1" src="https://dss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3791918726,2864900975&fm=26&gp=0.jpg">
            <img alt="瞑想する美しい女性" data-src="1.jpg">
            <img alt="図3" src="https://dss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=2853553659,1775735885&fm=26&gp=0.jpg">
            <img alt="瞑想の写真" data-src="1.jpg">
        </div>
    </本文>
    <スクリプト>

    </スクリプト>

</html>

操作効果:

CSS World - コード実践における画像 ALT 情報の表示に関するこの記事はこれで終わりです。より関連性の高い CSS 画像 ALT 情報コンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

<<:  音声キューイングシステムを実装するためのJavaScript

>>:  MySQLはPartition関数を使用して水平分割戦略を実装します。

推薦する

カルーセル効果を実現するためのネイティブJavaScript+CSS

この記事では、参考までに、カルーセル効果の具体的なコードをJavaScript+CSSを使用して実装...

MySQL DML言語操作例

追加説明、外部キー: 外部キーを使用しないでください。すべての外部キーの概念はアプリケーション層で解...

Linuxにソフトウェアをインストールするいくつかの方法の詳細な説明

1. RPM パッケージのインストール手順: 1. soft.version.rpm などの対応する...

resizeを使用して画像切り替えプレビュー機能を実装する方法

要点CSS resize プロパティを使用すると、要素のサイズ変更可能性を制御できます。サイズ変更を...

数百万のデータに対して MySQL クエリを最適化する 4 つの方法

目次1. 時間が経つにつれて限界が遅くなる理由2. 百万データシミュレーション1. 従業員テーブルと...

vue-seamless-scrollがスクロールしていいねをするときのデータ同期の問題を解決する

VUE は vue-seamless-scroll を使用して、自動的にスクロールしていいねします。...

Linux deb パッケージの解凍、変更、その他の操作方法のコード例

さまざまな理由により、debパッケージ内のさまざまなファイルの内容を直接変更する必要がある場合があり...

VueのID認証管理とテナント管理の詳細な説明

目次概要ボタンレベルの権限アイデンティティ認証管理R/U 権限権限の更新テナント管理テナント切り替え...

koa2 サービスに SSL を設定する方法

I. はじめに1: SSL証明書私のドメイン名は Tencent Cloud にあります。第 3 レ...

VMware 仮想マシンのネットワークの問題の解決方法

目次1. 問題の説明2. 問題解決1. 仮想マシンシステムのインストール時にネットワークがない場合2...

CSSのborder-radiusプロパティを使用して円弧を設定します

現象: divを一定の振幅で円、楕円などに変更する方法: CSSのborder-radiusプロパテ...

VMware 12 での Ubuntu 16.04 インストール チュートリアル

この記事では、VMware 12でのUbuntu 16.04のインストールチュートリアルを参考までに...

Js の継承とプロトタイプチェーンを理解するのに役立つ記事

目次継承とプロトタイプチェーン継承されたプロパティ継承されたメソッドJavaScript でのプロト...

Navicat を使用して csv ファイルを MySQL にインポートする

この記事では、参考までに、Navicatを使用してCSVファイルをMySQLにインポートするための具...