当前位置: 首页 > news >正文

HTML 网页中 自定义图像单击或鼠标悬停时放大

HTML 网页中 自定义图像单击或鼠标悬停时放大

一:在悬停时更改 HTML 图像的大小

        例子中,使用 CSS 样式;来设置每个图像元素的高宽 200px;以及 10px 边距,以便在图像周围留出空间。

        使用 CSS 的 :hover 属性来添加悬停效果。

        在 CSS 的 img:hover 块中,为图像元素设置 400px 的高度和宽度,鼠标悬停在图像上,即可缩放 2 倍。

示例代码:

HTML

<img src="图像引用网址400x400.jpg"/><img src="图像引用网址"/><img src="图像引用网址400x400.jpg"/><img src="图像引用网址"/>

CSS

img {height: 200px;width: 200px;margin: 10px;}img:hover{height: 400px;width: 400px;}

二:使用 transform CSS 属性来放大 HTML 图像。 

        transform 属性允许转换任何 HTML 元素,图像就是其中之一(意味着可以对图像进行缩放、旋转、平移等操作。

        在下面的示例代码中,使用 2 作为缩放值,在 img:hover 块中添加了 transform: scale(2) CSS 样式。 表示:鼠标悬停在特定图像上时,将图像高度和宽度乘以 放大2倍。

示例代码:

img:hover{transform:scale(2);}

三:点击图片使用 HTML 和 JavaScript 放大图片

        在 JavaScript 中,通过存储在 images 变量中的标签名称,访问所有 img 元素;之后,遍历图像数组并将 addEventListener 方法添加到每个图像。

addEventListner 方法有两个参数:

     一种事件类型;另一个是回调函数。

        在这里,使用了点击事件作为第一个参数,因此每当用户点击任何图像元素时都会执行回调函数。

        可以使用 element.style 属性更改 img 元素的样式。 在这里,使用 JavaScript 中的 image[i].style.transfrom 属性将 CSS transform应用于图像元素。

        在回调函数中,遍历图像数组以调整除单击图像之外的其他图像的大小。 接下来,将点击元素的变换样式更改为 scale(1.3)

        此外,还为单击的元素添加了一些边距,以便使用 JavaScript 获得更好的界面。

HTML

<img src="引用图像地址400x400.jpg" height="200px" width="200px"/>
<img src="图像引用网址" height="200px" width="200px"/>
<img src="引用图像地.jpg" height="200px" width="200px"/>
<img src="图像引用网址" height="200px" width="200px"/>
<img src="图像引用网址" height="200px" width="200px"/>

JavaScript

var images = document.getElementsByTagName("img");for (var i = 0; i < images.length; i++) {images[i].addEventListener("click", function () {for (var j = 0; j < images.length; j++) {if (i != j) {images[j].style.transform = "scale(1)";}}this.style.transform = "scale(1.3)";this.style.margin='40px'});}

        在上面的代码中,用户可以观察到当点击图片时,图片会放大,而其他图片会调整到原来的大小。 此外,当将鼠标悬停在图像上时也没有任何效果。

        介绍了三种不同的放大图像的方法。;前两个方法使用 CSS :hover 属性,第三个使用 JavaScript addEventListener 方法。

http://www.lryc.cn/news/138555.html

相关文章:

  • 从程序员进阶到架构师再到CTO,该如何破解焦虑?
  • 批量将excel文件转csv文件
  • 实现 CSS 文字渐变色效果
  • C++信息学奥赛1148:连续出现的字符
  • 【笔记】岂不怀归:三和青年调查
  • 使用Mavon-Editor编辑器上传本地图片到又拍云云存储(Vue+SpringBoot)
  • QT使用QXlsx实现对Excel的创建与文字的存取 QT基础入门【Excel的操作】
  • 前端遇到困扰怎么办?10年前端在线帮您解决问题,只需一杯下午茶
  • c#值类型和引用类型
  • 机器学习算法示例的收集;MetaAI编码工具Code Llama;“天工AI搜索”首发实测
  • 大模型一、大语言模型的背景和发展
  • Linux常用命令——dhcpd命令
  • Apache和Nginx各有什么优缺点,应该如何选择?
  • 基于JAVA SpringBoot和UniAPP的宠物服务预约小程序
  • TensorRT推理手写数字分类(三)
  • 创建git项目并提交
  • Android JNI修改Java对象的变量
  • VS+Qt 自定义Dialog
  • 从零开始学习 Java:简单易懂的入门指南之时间类(十七)
  • List 去重两种方式:stream(需要JDK1.8及以上)、HashSet
  • 5.8.webrtc事件处理基础知识
  • 无人机甚高频无线电中继通讯U-ATC118
  • 基于5G边缘网关的储能在线监测方案
  • 软件机器人助力基层网点实现存款数据自动化处理
  • Win10怎么关闭自动更新?简单4招为你解决烦恼!
  • 【AWS】安装配置适用于 Eclipse 的 AWS 工具包
  • vue页面在table字段后加单位
  • RK3588平台开发系列讲解(AI 篇)RKNN-Toolkit2 模型的加载
  • Nexus2迁移升级到Nexus3
  • 在线OJ平台项目