CSS World--Code Practice: Image Alt Information Presentation

CSS World--Code Practice: Image Alt Information Presentation

Using the <img> element with the default src to achieve the scrolling loading effect, however, there may be such an experience problem: if our JavaScript loads slowly, our page is likely to have patches of white image areas, pure white, without any information, and the user has no idea what the content is.
Although the alt attribute can provide descriptive information, it is hidden due to poor visual effects. We can display the alt information before the image is loaded:

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

    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>CSS World--Code Practice--Image Alt Information Presentation</title>
        <style>
            /* Scrolling loading effect CSS */
            /* img {
                visibility: hidden;
            }

            img[src] {
                visibility: visible;
            } */

            img {
                display: inline-block;
                width: 180px;
                height: 100px;
                /* Hide Firefox alt text */
                color: transparent;
                position: relative;
                overflow: hidden;
            }

            img:not([src]) {
                /* Hide Chrome alt text and silver border */
                visibility: hidden;
            }

            img::before {
                /* Light blue background */
                content: "";
                position: absolute;
                left: 0;
                width: 100%;
                height: 100%;
                background-color: #f0f3f9;
                visibility: visible;
            }

            img::after {
                /* Black alt information bar*/
                content: attr(alt);
                position: absolute;
                left: 0;
                bottom: 0;
                width: 100%;
                line-height: 30px;
                background-color: rgba(0, 0, 0, .5);
                color: white;
                font-size: 14px;
                transform: translateY(100%);
                /* Add some transition animation effects*/
                transition: transform .2s;
                visibility: visible;
            }


            img:hover::after {
                transform: translateY(0);
            }

        </style>
    </head>

    <body>
        <div style="width: 200px;height: 200px;background: blanchedalmond;overflow: auto;">
            <!-- Scrolling loading effect HTML: -->
            <!-- <img> -->
            <img alt="图1" src="https://dss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=3791918726,2864900975&fm=26&gp=0.jpg">
            <img alt="Beautiful woman meditating" 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="Meditation Picture" data-src="1.jpg">
        </div>
    </body>
    <script>

    </script>

</html>

Operation effect:

This is the end of this article about CSS World - Image ALT Information Presentation in Code Practice. For more relevant CSS image alt information content, please search 123WORDPRESS.COM’s previous articles or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future!

<<:  Complete the search function in the html page

>>:  The difference between absolute path and relative path in web page creation

Recommend

A Brief Analysis of the Differences between “:=” and “=” in MySQL

= Only when setting and updating does it have the...

Detailed tutorial on installing Nginx 1.16.0 under Linux

Because I have been tinkering with Linux recently...

Comparing Document Locations

<br />A great blog post by PPK two years ago...

js implements a simple shopping cart module

This article example shares the specific code of ...

Nginx http health check configuration process analysis

Passive Check With passive health checks, NGINX a...

Implementation of breakpoint resume in vue-video-player

In a recent project, I needed to implement the fu...

Three ways to align div horizontal layout on both sides

This article mainly introduces three methods of i...

Input file custom button beautification (demo)

I have written such an article before, but I used...

Detailed tutorial on installing and configuring MySQL 5.7.20 under Centos7

1. Download the MySQL 5.7 installation package fr...

CSS3 achieves flippable hover effect

CSS3 implements a flippable hover effect. The spe...

Summary of MySql index, lock, and transaction knowledge points

This article summarizes the knowledge points of M...

Font Treasure House 50 exquisite free English font resources Part 1

Designers have their own font library, which allo...

Analyze how to automatically generate Vue component documentation

Table of contents 1. Current situation 2. Communi...