css实现的滑动鼠标到img后切换图片移开恢复默认

想要实现“滑动鼠标到img后切换图片”,一般可以通过CSS中的:hover伪类绑定图片的背景,实现移动到图片上的时候鼠标指针会变成手型,同时图片背景也会发生改变。而“移开恢复默认”可以通过给img标签添加鼠标离开事件mouseout来实现。

以下是具体的实现步骤:

  1. 创建一个包含想要实现效果的img标签。
<img src="img1.jpg" id="myImg">
  1. 使用CSS定义图片的样式,并将初始默认图片作为背景(background)属性。
#myImg {
    width: 500px;
    height: 300px;
    background-image: url('img1.jpg'); /*设置默认图片*/
    background-size: cover;
}
  1. 定义悬浮效果
#myImg:hover {
    background-image: url('img2.jpg'); /*设置悬浮后的图片*/
    cursor: pointer; /*指定鼠标指针变成手型*/
}
  1. 定义恢复默认效果
#myImg:mouseout {
    background-image: url('img1.jpg'); /*恢复默认图片*/
}

这样就实现了鼠标滑动到图片上时切换图片,移开后恢复默认的效果。

以下是示例代码:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>滑动鼠标实现图片切换</title>
    <style>
        #myImg {
            width: 500px;
            height: 300px;
            background-image: url('img1.jpg'); /*设置默认图片*/
            background-size: cover;
        }
        #myImg:hover {
            background-image: url('img2.jpg'); /*设置悬浮后的图片*/
            cursor: pointer; /*指定鼠标指针变成手型*/
        }
        #myImg:mouseout {
            background-image: url('img1.jpg'); /*恢复默认图片*/
        }
    </style>
</head>
<body>
    <img src="img1.jpg" id="myImg">
</body>
</html>

示例1:实现两张图片轮流切换

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>轮流切换图片</title>
    <style>
        #myImg {
            width: 500px;
            height: 300px;
            background-image: url('img1.jpg');
            background-size: cover;
        }
        #myImg:hover {
            background-image: url('img2.jpg');
            cursor: pointer;
        }
        #myImg:mouseout {
            background-image: url('img1.jpg');
        }
        #myImg.new:hover {
            background-image: url('img1.jpg');
        }
        #myImg.new:mouseout {
            background-image: url('img2.jpg');
        } 
    </style>
</head>
<body>
    <img src="img1.jpg" id="myImg">
    <script>
        var img = document.getElementById('myImg');
        setInterval(function() {
            if (img.classList == '') {
                img.classList.add('new');
            } else {
                img.classList.remove('new');
            }
        }, 2000);
    </script>
</body>
</html>

在添加了JS部分之后,我们实现了两张图片之间每隔2秒进行轮流切换。

示例2:通过CSS实现图片的放大缩小效果

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>图片放大缩小动画</title>
    <style>
        #myImg {
            width: 500px;
            height: 300px;
            background-image: url('img1.jpg');
            background-size: cover;
            transition: all 1s ease; /*定义过渡效果*/
        }
        #myImg:hover {
            cursor: pointer;
            transform: scale(1.1); /*鼠标悬浮时进行图片放大效果*/
        }
    </style>
</head>
<body>
    <img src="img1.jpg" id="myImg">
</body>
</html>

在添加了transition属性之后,我们实现了图片的缩放动画效果。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:css实现的滑动鼠标到img后切换图片移开恢复默认 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • CSS3中Transform动画属性用法详解

    请参考下面的攻略: CSS3中Transform动画属性用法详解 Transform动画是CSS3中常用的属性之一,它可以实现元素的移动、旋转、缩放和倾斜等效果,为页面增添动态美感。本攻略将详细讲解Transform动画属性的用法,让你掌握基本的使用技巧。 一、Transform的基本语法 Transform属性基本语法如下: transform: none…

    css 2023年6月10日
    00
  • YUI Compressor压缩JavaScript原理及微优化

    YUI Compressor 是一个流行的 JavaScript 压缩工具,它采用了一系列的微优化来减小代码的体积和提升性能。本文将详细讲解 YUI Compressor 压缩 JavaScript 的原理及微优化,从而让你更好地理解和应用它。 YUI Compressor 压缩 JavaScript 的原理 YUI Compressor 压缩 JavaSc…

    css 2023年6月10日
    00
  • 基于javascript的无缝滚动动画1

    下面是基于 javascript 的无缝滚动动画攻略: 1、需求分析 首先,我们需要明确我们要做的是一个无缝滚动的动画效果。该效果可以让用户通过鼠标滑轮或手势轻松地左右滑动页面,并且当滑动到页面边缘时会循环滚动,保证用户可以持续无感知地查看页面内容。 2、技术实现 实现无缝滚动的动画效果,可以使用以下技术来完成: 2.1 CSS3动画 可以使用 CSS3 的…

    css 2023年6月10日
    00
  • Discuz-x系列教程 DX的css命名规则、缓存、加载机制

    Discuz-x系列教程 DX的CSS命名规则 Discuz-x (简称DX)是一款流行的论坛系统,它的前端开发使用了LESS和CSS预处理语言,同时有一套自己的CSS命名规则。 DX的CSS命名规则 DX的CSS命名规则主要包括以下几个方面: 命名空间:通过给不同部分的CSS添加命名空间来避免CSS的冲突。命名空间可以是类名、ID或其他选择器。例如: “…

    css 2023年6月10日
    00
  • JavaScript while循环

    JavaScript中的while循环结构是一种简单的迭代结构,用于重复执行一组语句,直到某个条件变成假为止。该循环结构由一个布尔表达式和一组代码块组成,只要布尔表达式的结果为true,代码块就会一遍又一遍地执行。 while循环的语法结构如下: while (condition) { // 代码块 } 这里,condition是在循环每次迭代前被计算的布尔…

    Web开发基础 2023年3月30日
    00
  • JS+CSS实现TreeMenu二级树形菜单完整实例

    当用户需要在页面展示大量的分类信息时,树形菜单就可以提供一种直观并便捷的分类方式。同时,TreeMenu是一种常见的树形菜单,它可以很好地帮助用户快速定位和操作特定的选项。本攻略将介绍如何使用JS和CSS实现一个简单的TreeMenu二级树形菜单,并提供两个示例说明,以帮助您更好地理解实现过程。 实现思路 TreeMenu菜单可以通过HTML、CSS和Jav…

    css 2023年6月10日
    00
  • 在可编辑div中插入文字或图片解决思路与实现步骤

    让我来详细讲解一下“在可编辑div中插入文字或图片解决思路与实现步骤”的完整攻略。 解决思路 在一个可编辑的div中插入文字或图片,需要通过 JavaScript 来实现。具体的思路如下: 获取可编辑div的 DOM 对象,通过 document.getElementById() 或 document.querySelector() 方法来获取。 在可编辑d…

    css 2023年6月10日
    00
  • CSS中的下划线text-decoration属性使用进阶

    下面是关于“CSS中的下划线text-decoration属性使用进阶”的详细讲解攻略: 1. text-decoration属性介绍 text-decoration属性用于给文本添加一条线,实现下划线、删除线、波浪线等效果。常见的属性值包括:underline(下划线)、overline(上划线)、line-through(删除线)、none(不添加线条)…

    css 2023年6月9日
    00
合作推广
合作推广
分享本页
返回顶部