美文网首页
替换元素的妙用1

替换元素的妙用1

作者: 阿古瓜 | 来源:发表于2019-05-19 14:11 被阅读0次

因为像img等替换元素是没有伪类的::before, ::after, 可以用其特征实现,图片未加载时信息的显示效果

<!DOCTYPE html>
<html lang="zh">
<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>替换元素的妙用1</title>
    <style type="text/css">
        img {
            display: inline-block;
            width: 200px;
            height: 200px;
             /* 隐藏Firefox alt文字 */
            color: transparent;         
            position: relative;
            overflow: hidden;
        }
        img:not([src]) {
            /* 隐藏Chrome alt文字以及银色边框 */
            visibility: hidden;
        }
        
        img::before {
            /* 淡蓝色占位背景 */
            content: "";
            position: absolute; left: 0;
            width: 100%; height: 100%;
            background-color: #f0f3f9;
            visibility: visible;
        }
        
        img::after {
            /* 黑色alt信息条 */
            content: attr(alt);
            position: absolute;
            left: 0; bottom: 0;
            width: 100%;
            line-height: 30px;
            background-color: rgba(0,0,0,.3);
            color: white;
            text-align: center;
            font-size: 14px;
            transform: translateY(100%);
            /* 来点过渡动画效果 */
            transition: transform .2s;
            visibility: visible;
        }
        
        img:hover::after {
            transform: translateY(0);
        }
        
        
    </style>
</head>
<body>
    <div class="wrapper">
        <img alt="facebook" data-src="img/timg.jpg">
        <p><button>设置src属性显示图片</button></p>
    </div>
    
    
    <script type="text/javascript">
        var eleButton = document.querySelector('button'),
             eleImg = document.querySelector('img');

    if (eleButton && eleImg) {
        var initValueButton = eleButton.innerHTML;
        // 图片地址
        var srcImage = eleImg.getAttribute('data-src');
        // 移除该属性
        eleImg.removeAttribute('data-src');
        // 按钮点击事件
        eleButton.addEventListener('click', function() {
            if (this.innerHTML == initValueButton) {
                this.innerHTML = '移除src属性';
                // 图片显示
                eleImg.setAttribute('src', srcImage);
            } else {
                this.innerHTML = initValueButton;
                // src属性移除
                eleImg.removeAttribute('src');
            }
        });
    }
    </script>
</body>
</html>

相关文章

  • 替换元素的妙用1

    因为像img等替换元素是没有伪类的::before, ::after, 可以用其特征实现,图片未加载时信息的显示效果

  • line-height

    参考文章 1. 替换元素vs非替换元素 先讲个题外话,理解一下替换元素和非替换元素.替换元素:浏览器根据元素的标签...

  • css文档

    1. 元素 1.1 替换元素和非替换元素 替换元素: 它会被存储在文档外部的一个图片文件所替代。 非替换元素:...

  • 2.替换和不可替换元素,元素的格式化

    替换和不可替换元素 1.替换元素 1.替换的行内元素具有“内在尺寸”,尺寸是有自身决定的,而不会受周围环境的影响,...

  • 《css 世界》content

    1. content 与替换元素 替换元素( 或表单元素如 ),顾名思义,内容可替换,其他...

  • css之Content-替换元素

    壹 替换元素 [toc] 1、what 替换元素 我们根据外在盒子可以分为内联元素和块级元素,根据是否具有可替换内...

  • 重新css(2)深入理解content

    1.什么是替换元素 在了解content之前,我们需要掌握CSS中一种常见的元素——替换元素。替换元素是“内容(c...

  • 元素的水平居中

    1. 行内级元素(包括inline-block元素)  行内非替换元素span/a 行内替换元素 img/inp...

  • 2022-01-16 css

    1、行内元素/块级元素 非替换元素/替换元素2、img的title和alt属性3、meta标签4、DOCTYPE标...

  • splice 用法

    splice 的功能: 删除元素/ 插入元素/ 替换元素 删除元素的用法: 替换元素 插入元素, 和替换元素的差别...

网友评论

      本文标题:替换元素的妙用1

      本文链接:https://www.haomeiwen.com/subject/pixqzqtx.html