用CSS3实现放大效果
任务描述
本关任务:用CSS3放大效果。
效果如下:
相关知识
为了完成本关任务,你需要掌握:1.transform
属性,2.transition
属性。
transform属性
下面是基本的html结构,:
<div class="scale">
<img src="img/diary1.jpg" alt="diary1"/>
</div>
效果如下:
现在需要基于中心放大1.2倍。
效果如下:
该如何实现呢?
咱们先实现放大1.2倍,用到了 transform属性。
如上面所说,添加如下代码:
.scale:hover img{ /*注意给 img 添加属性*/
transform: scale(1.2,1.2);
transform-origin: center center;
}
效果如下:
可以看出,上面的图片超出了边框,而且放大有点突兀。先解决超出边框的问题,添加如下代码:
.scale{
overflow: hidden; /*内容溢出时隐藏*/
}
这里解释一下参数:
scale
表示放大或缩小;()
里大于1 表示放大,小于1 表示缩小;第一个数表示
x
轴的缩放,第二个数表示y
轴的缩放,如果两个数一样,可以用一个数代替。
transition属性
基本效果已经实现了,就是有点突兀,如何平滑的过渡呢?这里用到了transition
属性。
添加如下代码:
.scale img{
transition: all 0.3s linear;
}
效果如下:
这就已经实现了。参数和上一关一样。
这里再介绍一下可以转变元素位置的属性:
transform-origin: center center;
这里表示基于中心进行缩放或移动。
参数详解:
- 第一个参数可以为:
left
,center
,right
,定义视图被置于X
轴的何处; - 第二个参数可以为:
top
,center
,bottom
, 定义视图被置于Y
轴的何处;
它默认是基于中心的。用图表示如下:
编程要求
在右侧编辑器中,补全Begin
至End
中间的部分,按照提示完成代码:
给
img
所有属性添加0.3s
的平滑过渡效果(linear)
,不考虑兼容性;设置
img
缩放中心为center
;设置
img
放大倍数为1.1
倍;
注意:
这里用
0.3s
,不用.3s
;缩放中心用
center center
;放大倍数为
1.1, 1.1
;这些只是为了方便评测做的规范;
效果如下:
<!DOCTYPE html>
<html><head><meta charset="utf-8" /><title>少儿教育</title><style type="text/css">* {margin: 0;padding: 0;}ul,li {list-style: none;}a {color: #888888;text-decoration: none;font-size: 16px;}body {background: #f7f7f7;position: relative;}.diary-block {width: 90%;height: 360px;margin:40px auto;padding: 0px 40px;}.diary-item {width: 26%;float: left;border: 1px solid #ccc;}.diary-item:not(:last-child) {margin-right: 7%;}.diary-item .diary-img {overflow: hidden;}/*----------- Begin ---------*/.diary-item .diary-img img {width: 100%;height: 200px;/*给img所有属性添加0.3s的平滑过渡效果(linear)*/transition:all 0.3s linear;}.diary-item .diary-img img:hover {/*缩放中心为center*/transform-origin:center center;/*放大倍数为1.1倍;*/transform:scale(1.1,1.1);}/*--------- End ----------*/.diary-item .diary-details {height: 150px;padding: 10px 30px;color: #888;}.diary-item .diary-details p {line-height: 26px;}.diary-item .diary-details .diary-describe {height: 72px;overflow: hidden;}</style></head><body><div class="diary-block"><div class="diary-item clearfix"><div class="diary-img"><img src="https://www.educoder.net/attachments/download/198656" alt="" /></div><div class="diary-details"><p>如何选择培训机构 ?</p><p>2017 06-15</p><p class="diary-describe">起飞页推崇用户自己创建网站并享受建站所带来的乐趣,因此我们为您准备了一套安全、稳创建网站并享受建站创建网站并享受建站</p></div></div><div class="diary-item"><div class="diary-img"><img src="https://www.educoder.net/attachments/download/198657" alt="" /></div><div class="diary-details"><p>如何选择培训机构 ?</p><p>2017 06-15</p><p class="diary-describe">起飞页推崇用户自己创建网站并享受建站所带来的乐趣,因此我们为您准备了一套安全、稳创建网站并享受建站创建网站并享受建站</p></div></div><div class="diary-item"><div class="diary-img"><img src="https://www.educoder.net/attachments/download/198658" alt="" /></div><div class="diary-details"><p>如何选择培训机构 ?</p><p>2017 06-15</p><p class="diary-describe">起飞页推崇用户自己创建网站并享受建站所带来的乐趣,因此我们为您准备了一套安全、稳创建网站并享受建站创建网站并享受建站</p></div></div></div></body></html>
用CSS3实现放大效果相关推荐
- css3为图片添加鼠标移入放大效果
css3为图片添加鼠标移入放大效果 只需要为添加效果的图片定义一个伪类 img.zoom-img:hover {-webkit-transform: scale(1.15);-webkit-trans ...
- css三角形 增涨,CSS3实现三角形不断放大效果
一.CSS3三角形不断放大特效 11.1 图片预览 11.2 index.html代码 CSS3三角形不断放大特效 11.3 style.css代码 html { height: 100%; } bo ...
- css3鼠标悬浮放大效果
<!doctype html> <html><head><meta charset="utf-8"><title>css ...
- html鼠标移动时图片放大缩小,JS与CSS3实现图片响应鼠标移动放大效果示例
本文实例讲述了JS与CSS3实现图片响应鼠标移动放大效果.分享给大家供大家参考,具体如下: 今天看网易的网站上,当我把鼠标放上去的时候发现图片放大,移开图片缩小,于是自行尝试,结果如下. 方法一:使用 ...
- 用CSS3实现对图片的放大效果
用CSS3对图片放大效果 .right_div .topicons li a:hover img{ -webkit-transform:scale(1.5,1.5); -moz-tra ...
- 怎么在html中加入特效文字,如何使用HTML5+css3实现粒子效果文字动画特效(附完整代码)...
我们在浏览web网页的时候会发现现在的网页做的越来越美观,很多动画特效做的越来越炫酷,这离不开HTML5和css3的深入开发.今天我们要来分享一款基于HTML5和css3的文字特效--粒子效果文字动画 ...
- html怎么把字做成动画效果,如何使用HTML5 css3实现粒子效果文字动画特效(附完整代码)...
摘要 腾兴网为您分享:如何使用HTML5 css3实现粒子效果文字动画特效(附完整代码),学宝,小米社区,手机管家,神州专车等软件知识,以及小学英语点读机,便利宝,startos,工资宝,玩,大将军手 ...
- css3实现动画效果完整代码demo
过渡渐隐 适合两张图片调整其中一个透明度,完整代码: <!doctype html> <html lang="en"> <head><me ...
- ae制h5文字动画_如何使用HTML5+css3实现粒子效果文字动画特效(附完整代码)
我们在浏览web网页的时候会发现现在的网页做的越来越美观,很多动画特效做的越来越炫酷,这离不开HTML5和css3的深入开发.今天我们要来分享一款基于HTML5和css3的文字特效--粒子效果文字动画 ...
最新文章
- java继承的知识点_Java知识点梳理——继承
- switch-case和if-else可互换时
- 关于main函数中argc和argv的简单介绍
- switch java 语法_Java编程—switch语句语法详解
- 深入理解Elasticsearch(原书第2版)》一1.2 何为Elasticsearch
- System.IO.Pipelines: .NET高性能IO
- vue.js 编程导航,如何传递参数?
- x86系统MySQL_deepin20.1系统安装MySQL8.0.23(最美国产Liunx系统,最新,最详细的MySQL8安装教程)...
- 基于 HTML5 WebGL 的 3D 渲染引擎构建工厂运作系统
- 字符串 - KMP模式匹配
- 《Effective Java》第5条:避免创建不必要的对象
- M1芯片CAD如何安装?M1 mac怎么安装AutoCAD?
- 《离散数学》速成-练习题答案(含题目)
- 网卡,交换机和路由器
- 软件工程师的工作经验总结
- 网络对抗实验报告 | 逆向与Bof基础实验报告
- 服务器划分不同虚拟主机,服务器划分不同虚拟主机
- 深度学习基础:评价标准——TP、FN、FP、TN、AP、MAP
- 【系统集成】002-信息系统集成与服务管理
- No outgoing sequence flow of the exclusive gateway ‘XXX‘ could be selected for continuing the proces
热门文章
- sql server数据库Log文件特别大怎么处理
- 【HaaS Python硬件积木】乙醇传感器
- 阿里云iot haas Micropython连接esp32;esp32物联网设备上报信息及云端信息获取;远程控制设备自带led熄灭;网页界面交互远程控制
- Java基础----员工工资计算器
- 微信小程序之 Tabbar(底部选项卡)
- 关于Excel下通过VBA实现工作簿文件下工作表的合并
- php判断数组的值是否为空,php中如何判断数组是否为空
- 张小白的渗透之路(五)——上传漏洞及解析漏洞详解
- 迁移学习——Low-Rank Transfer Subspace Learning
- yolov5+车道线检测