“”开天眼“”,天地分割效果

news/2024/7/1 2:39:05

  每日一句:Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. (源于:nodejs的官网)

      翻译:nodejs使用了事件驱动,非阻塞I/o的模型,这些模型是的它运行起来轻便而且有效率。

  今天来一个简单的css效果,用的属性大家可能不熟悉,就是clip,标题取得有点霸气,但是很形象来描述这个效果:先上图:

      

   嗯,是的,这个图确实不错,小编逛园子偷来的,蓝天白云,还有诗和远方。当鼠标悬停的时候,就在路的尽头,打开了一道口,天地分开。如图

        

      这个效果很简单,没有花哨的js和css,就是用了简单的定位和css属性,代码如下:

  html:

<div id="adou"><span>DOVE</span><img src="road-to-nowhere.jpg" alt><img src="road-to-nowhere.jpg" alt><img src="road-to-nowhere.jpg" alt="" style="position:             static; opacity: 0">
</div>                

css:

        div#adou {position: relative;
       overflow: hidden;width: 500px;
background: #0057a7;font-family: Blue Highway, Arial, sans-serif;color: #fff; margin: 0 auto;font-size: 0;}div#adou img {position: absolute;transition: 1s all ease-in-out;width: 100%;}div#adou span {position: absolute;
font-size
: 8rem;top: 150px; left: 100px;} div#adou img:nth-of-type(1) {clip: rect(0px,500px,250px,0px);}div#adou img:nth-of-type(2) {clip: rect(250px,500px,500px,0px);}div#adou:hover img:nth-of-type(1) {transform: translateY(-150px);}div#adou:hover img:nth-of-type(2) {transform: translateY(150px);}

实现大体思路:

  三张图片绝对定位在一块,实际上三张图片已经叠加在一块。然后,把留下第一张的上半部分,在留下第二张的下半部分,第三张不动,定位改成静态定位(默认的),透明度改为0。这个显示区为图片的大小,显示为超出隐藏。

  再来说说这个clip rect的属性,它是一个剪切=>clip: rect(0px,500px,250px,0px); rect的四个参数可以理解为距离上右下左的参数,rect直角的意思。好像那个padding 和margin当paddin设置四个属性的时候就是 上右下左 的参数。这样就加下了图片的上半部分,同理  clip: rect(250px,500px,500px,0px); 剪下了图片的下半部分,当鼠标悬停的时候,有个过渡动画 向上移动 150px,第二个图片向下移动150px,z中间就显示出我们在后面隐藏的文字。效果完成。transformY是css3的动画属性,表示在y轴的移动,translateY(-150px) 表示Y轴的移动距离。

  注意:这个transition的效果可以先写在 img的css里,尽管在hover的时候才出现过渡效果的,如果写在hover的css里,当鼠标移出的时候,没有了过渡效果,因此写在img里最为合适。


http://lihuaxi.xjx100.cn/news/241469.html

相关文章

云计算为企业实现业务成果开辟了新的机遇

如今&#xff0c;云计算已经成为科技行业的一个重要的话题&#xff0c;且被视为一个IT服务关键的交付机制。而目前的现实是&#xff0c;大多数企业已经在使用某种形式的云计算&#xff0c;因为云计算为企业实现其业务成果开辟了新的机遇。 云计算提供主机服务和部署模型&#x…

mac mysql5.7 my_【mysql】Mac下安装mysql5.7 完整步骤,大坑已解决

最近使用Mac系统&#xff0c;准备搭建一套本地web服务器环境。因为Mac系统自带PHP和apach&#xff0c;但是没有自带mysql&#xff0c;所以要手动去安装mysql&#xff0c;本次安装mysql最新版5.7.17。1.官网下载点击上面的地址&#xff0c;会看到如下图的页面。你可能不知道该下…

(C++)除基取余法:将十进制数转化为Q进制数

所谓基&#xff0c;就是指将要转换成的进制Q。 除基取余的意思就是&#xff1a;每次将待转换数除以Q&#xff0c;然后将得到的余数作为低位存储&#xff0c;而商则继续除以Q并重复上面的操作&#xff0c;直至商0时&#xff0c;将所有位从高到低输出就可以得到Q进制数。 代码实…

微信公众号token 验证

1. 首先给出测试项目的整体目录&#xff1a; 2. CoreServlet类&#xff1a; 当get请求的时候会执行get方法&#xff0c;post请求的时候会执行post方法&#xff0c;分别来处理不同的请求 package com.zjn.servlet;import java.io.IOException; import java.io.PrintWriter;impor…

docker安装mysql5.7_超详细Docker安装Mysql5.7并进行挂载

1、下载mysql 5.7镜像docker pull mysql:5.72、创建mysql容器并启动docker run -d -p 3306:3306 -e MYSQL_USER"ppx" -e MYSQL_PASSWORD"123456" -e MYSQL_ROOT_PASSWORD"123456" --name mysqltest1 mysql:5.7 --character-set-serverutf8 --col…

PAT 显示格式错误

记录一&#xff1a; 2021/7/8 10:26 代码逻辑写错了&#xff0c;一个该没有空格的地方也加了空格

redhat6.5 yum源

首先在自己的电脑上安装Redhat6.5&#xff08;本经验用的是Redhat6.5-64位的系统&#xff09;&#xff0c;然后把Redhat6.5系统ISO镜像文件放到自己的电脑中&#xff08;本经验是放在/root 下&#xff0c;切记自己的存放路经&#xff0c;以后不要再变动此路径和移动ISO文件&…