您现在的位置是:网站首页> 编程资料编程资料
基于CSS 判断鼠标进入的方向CSS3制作炫酷带方向感应的鼠标滑过图片3D动画
2023-10-18
1842人已围观
简介 这篇文章主要介绍了基于CSS 判断鼠标进入的方向的实现代码,代码简单易懂,非常不错,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
在之前某一个前端技术群里,有一个群友说他面试的时候遇到了一个问题,就是面试官让他用纯 CSS 来实现一个根据鼠标移动位置觉得物体移动方向的 DEMO。
给出的初始结构如下:
从不同方向使鼠标指针移过下面的内容
↓
→←Hover me!↑
效果图如下:
实现
净会问这种不实用又跟业务没啥关系的问题,气抖冷,中国前端什么时候才能真正的站起来。 谢谢面试官提出的好问题,我会努力实现出来的。
所以这个功能真的能用纯 CSS 实现吗?
答案是可以的,首先我们来分解下思路。
CSS 鼠标事件
首先根据题干,我们知道这题是需要用到鼠标操作的,JS 里我们有各种 mouse 事件,但同样的,CSS 我们也有 :hover 。
这题我们需要利用到的选择器就是 :hover 了
判断方向
判断方向的功能便是本题的核心。
从题图上来看,其实已经给了我们方向的指引,就是告诉我们鼠标要通过四个箭头的方向进入。
然后就是如果要纯 CSS 来实现,就是我们的鼠标必须要触碰到某个关键节点,而且这个节点的某个表现一定是可以代表这个方位的。
这就是题目给出的两个隐藏条件。
所以我们来尝试下实现。
首先要通过 :hover 来触碰到这个关键节点,而且是要在箭头指向的方向下触碰触发,那么我们可以在箭头所指的方向都加上一个能被触碰到的物体,例如这样:
上下左右Hover me!
效果如下:

我们可以发现,除了 右块 之外,都被遮住了,嗯,正常现象。
接下来我们只需要让这几个块退到边缘即可。
代码如下:
.block_hoverer { position: absolute; z-index: 1; width: 100%; height: 100%; transition: all 0.3s ease; } .block_hoverer:nth-child(1) { background: red; top: -90%; } .block_hoverer:nth-child(2) { background: lime; top: 90%; } .block_hoverer:nth-child(3) { background: orange; left: -90%; } .block_hoverer:nth-child(4) { background: blue; left: 90%; }效果如下:

然后我们加上过渡:
.block_hoverer { transition: all 0.3s ease; } .block_hoverer:hover { opacity: 1; top: 0; left: 0; }效果如下:

一步就是隐藏起来:
.block { position: relative; display: inline-block; overflow: hidden; width: 10em; height: 10em; vertical-align: middle; } .block_hoverer { opacity: 0; } .block_hoverer:hover { opacity: 1; }效果如下:

所以我们有完整代码如下:
从不同方向使鼠标指针移过下面的内容
↓
→←1234Hover me!↑
完整效果可以查看鱼头的codepen
到此这篇关于基于CSS 判断鼠标进入的方向的文章就介绍到这了,更多相关css 鼠标进入方向内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- 深入浅析CSS3中的Flex布局整理CSS实现动态图片的九宫格布局的实例代码css之display属性之inline-block布局实现详解详解CSS中的flex布局css用Flex布局制作简易柱状图的实现使用CSS和Java来构建管理仪表盘布局的实例代码
- CSS中层叠上下文的具体使用css3+svg实现创意图片层叠音乐播放样式代码css 层叠与z-index的示例代码css样式层叠规则详解CSS 中重要的层叠概念详解详解CSS中的特指度和层叠问题
- 纯CSS3实现移动端展开和收起效果的示例代码HTML5给汉字加拼音收起展开组件的实现代码纯CSS3实现炫酷圆形主菜单动画展开收起特效源码CSS3 实现侧边栏展开收起动画
- CSS实现聊天气泡效果CSS3 仿微信聊天小气泡实例代码纯CSS实现聊天框小尖角、气泡效果
- css3 实现元素弧线运动的示例代码css3实现画半圆弧线的示例代码
- 全民英雄流浪剑客百搭阵容推荐_流浪剑客强势来袭_手机游戏_游戏攻略_
- 天天酷跑暗影战车获得方法_天天酷跑暗影战车怎么得_手机游戏_游戏攻略_
- 天天飞车 S级车什么时候出 天天飞车S车怎么获得_手机游戏_游戏攻略_
- 全民飞机大战葫芦侠修改一键送心教程_一键送心修改方法_手机游戏_游戏攻略_
- 天天酷跑审判女王获得方法_天天酷跑审判女王属性全方位解析_手机游戏_游戏攻略_
