这是一款非常有创意的卡片式项目管理界面UI设计效果。该UI设计中,将各个项目以卡片的方式堆叠排列在屏幕上,当点击了其中的某个项目的时候,该项目图片会全屏放大,向下滚动鼠标可以看到该项目的介绍信息。

该项目管理界面还提供了一个全屏的导航菜单,用户可以通过右上角的汉堡包图标来触发全屏菜单。

使用方法HTML结构

该卡片式项目管理界面的HTML结构分为3个部分:.cd-nav-trigger是全屏菜单的触发按钮,nav.cd-primary-nav是全屏导航菜单,.cd-projects-container是项目无序列表的容器。

每一个项目都包含一个表示项目标题的div.cd-title元素和一个表示项目信息的div.cd-project-info元素。项目的图片被设置为.cd-title::before伪元素的背景图片。

Menu

Navigation

Project 1

Scroll down

项目描述

CSS样式div.cd-project-info元素(项目信息)被设置为100%的高度和相对定位。每一个单独的项目都使用绝对定位,并设置100%的高度和放置在它们父容器.cd-project-info的左上角位置。开始它们是堆叠在一起的。

接着,第二和第三个项目被使用translateY属性沿Y轴向下移动,分别移动.cd-project-info高度的1/3和2/3。这样就是3个项目分别在同一个屏幕中显示1/3的部分。

.cd-projects-container {

height: 100%;

position: relative;

overflow: hidden;

}

.cd-projects-container .single-project {

position: absolute;

top: 0px;

left: 0px;

height: 100%;

width: 100%;

transition: transform 0.4s;

}

.cd-projects-container .single-project:nth-of-type(2) {

transform: translateY(33.3333333333%);

}

.cd-projects-container .single-project:nth-of-type(3) {

transform: translateY(66.6666666667%);

}

.cd-title(项目的标题)被设置为33.33%(1/3视口的高度),而它的伪元素.cd-title::before被设置为300%,实际是等于视口的高度。

.cd-title {

height: 33.3333333333%;

}

.cd-title::before {

/* 背景图片 */

content: '';

position: absolute;

top: 0;

left: 0;

height: 300%;

width: 100%;

background-position: center center;

background-repeat: no-repeat;

background-size: cover;

}

.single-project:nth-of-type(1) .cd-title::before {

background-image: url(../img/img-1.jpg);

}

当某个项目被选择的时候,该项目被添加一个.selected class,该class应用了一个translateY(0)转换。同时将该项目的兄弟元素移动到屏幕之外translateY(100%),这样使该项目占满整个屏幕。

.cd-projects-container .single-project.selected {

/* 被选择的项目 */

transform: translateY(0);

}

.cd-projects-container .single-project.selected ~ li {

/* 隐藏其它项目 */

transform: translateY(100%);

}

对于.cd-project-info(项目信息),它有100%的高度,一个overflow: auto属性(使其可以滚动),它被放置在父元素.single-project的左上角位置。它的::before伪元素是一个空白占位,它等于屏幕视口的宽度和高度,它的作用是让项目图片开始时可以全屏显示,而不是被content-wrapper的内容覆盖。

.cd-project-info {

position: absolute;

top: 0;

left: 0;

width: 100%;

height: 100%;

overflow: auto;

opacity: 0;

visibility: hidden;

transition: opacity 0.4s, visibility 0.4s;

}

.cd-project-info::before {

/* 用与占位,显示项目图片 */

content: '';

display: block;

height: 100%;

width: 100%;

pointer-events: none;

}

.cd-project-info .content-wrapper {

position: relative;

z-index: 2;

padding: 2em 0 3em;

background-color: #FFFFFF;

}

.selected .cd-project-info {

opacity: 1;

visibility: visible;

transition: opacity 0s, visibility 0s;

}

对于全屏导航菜单,开始时.cd-primary-nav元素被放置在.cd-projects-container的下面。当用户点击了.cd-nav-trigger按钮之后,所有的项目被移动到屏幕的下方,这时全屏导航菜单被显示出来。

.cd-primary-nav {

position: absolute;

top: 0;

left: 0;

/* height = (100% - 9%) - 9% is the space taken by the projects when the navigation is open */

height: 91%;

width: 100%;

overflow: auto;

opacity: 0;

}

.cd-primary-nav ul {

transform: translateY(50px);

transition: transform 0.4s;

}

.cd-primary-nav.nav-open {

opacity: 1;

}

.cd-primary-nav.nav-open ul {

transform: translateY(0);

}

.cd-projects-container.nav-open .single-project {

box-shadow: 0 0 30px rgba(0, 0, 0, 0.5);

transform: translateY(91%);

}

.cd-projects-container.nav-open .single-project:nth-of-type(2) {

transform: translateY(94%);

}

.cd-projects-container.nav-open .single-project:nth-of-type(3) {

transform: translateY(97%);

}

JavaScript

该UI设计中使用jQuery来监听.cd-nav-trigger和.single-project元素上的点击事件,并为相应的元素添加和移除相应的class。

js实现卡片式项目管理界面UI设计效果就为大家分享到这,希望本文所述对大家学习javascript程序设计有所帮助。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

javascript php 界面,js实现卡片式项目管理界面UI设计效果_javascript技巧相关推荐

  1. 邮政收件箱界面html,时尚邮件收件箱UI设计效果

    这是一款效果非常现代时尚的邮件收件箱UI设计.该邮件收件箱UI设计以简洁的列表方式列出所有的邮件,用户点击相应的邮件时会以动画的方式弹出该邮件的详细信息. 使用方法 HTML结构 在这个邮件收件箱UI ...

  2. 软件开发基于JavaScript实现快速转换文本语言(繁体中文和简体中文)_javascript技巧

    软件开发基于JavaScript实现快速转换文本语言(繁体中文和简体中文)_javascript技巧 一般商业网站都有一个语言的需求,就是为了照顾使用正体中文的国人,会特地提供一个切换到正体中文的选项 ...

  3. html桌面卡牌效果,纯CSS3超酷文章卡片UI设计效果

    这是一款使用纯CSS3制作的超酷文章卡片UI设计效果.该文章卡片带有阴影效果,当鼠标滑过卡片时,文章的描述信息会以滑动动画的方式显示在卡片中. 使用方法 HTML结构 一张卡片的HTML结构如下: 文 ...

  4. CardView卡片式登录界面

    [楔子]我们常为基本所有开发都要遇到的登录界面快速设计而犯愁,那么可以尝试一下卡片式控件,将需要的控件用卡片圈起来,使整个界面看起来十分舒爽.卡片式设计似乎天生就是为了应用程序而存在着的一种独特的设计 ...

  5. 计算机卡登录界面,win10电脑卡在登录界面怎么办

    win10系统推出也有一段时间了,相信很多小伙伴都将自己的电脑升级成Win10系统了.不过因为系统还不够成熟,狠毒哦小伙伴都遇到了各种各样的问题.今天,就让小编来和大家分享win10系统卡在登录界面解 ...

  6. 联想卡在logo界面_联想电脑卡在logo界面 联想电脑卡在载入界面怎么办

    有时候我们会遇到电脑开机一直卡在主板Logo界面的问题,原因有很多,怎么解决呢?下面是小编为大家整理的关于联想电脑卡在载入界面的相关资料,希望对您有所帮助! 联想电脑卡在载入界面的解决方法 下面这张就 ...

  7. 联想卡在logo界面_联想电脑卡在载入界面如何修复 联想电脑卡在logo界面

    电脑有时候会遇到一些故障,发现电脑开机卡在logo界面,我们该怎么进行处理?下面是小编为大家整理的关于联想电脑卡在载入界面的相关资料,希望对您有所帮助! 联想电脑卡在载入界面的解决方法 原因分析:一般 ...

  8. linux系统开机一直卡在logo界面,ubuntu开机卡在ok界面,ubuntu一直在加载界面

    ubuntu卡在开机启动界面了,怎么办? 1.使用ctrl alt f1切换tty,然后按ctrl alt f7切换回界面(一般情况下,ctrl alt f7是界面,如果不是,从f2尝试f7),可能会 ...

  9. 联想卡在logo界面_[联想电脑卡在载入界面有什么解决方法]联想电脑卡在logo界面...

    [ 联想电脑卡在载入界面有什么解决方法 ] 联想电 脑卡在 logo 界面 首先我是开机时按 F8, 进入安全模式界面.但是进去的时候等待 了几分钟都无反应,上面一直显示请稍等 ... 没办法只有按下 ...

最新文章

  1. 传播路径可训练的神经网络(云上人二代)
  2. c++ 调用python返回指针
  3. Swift类扩展使用方法
  4. 爬取w3c课程—Urllib库使用
  5. Ubuntu 14.04下安装Redis报错:“You need tcl 8.5 or newer in order to run the Redis test”问题解决
  6. java中异常的定义_java中异常的理解
  7. ip subnet-zero
  8. 如何成为嵌入式软件工程师_成为高效软件工程师的三个关键
  9. 微型计算机故障分为哪几类,西南大学19秋[0240] 计算机维修技术在线作业
  10. javascript技巧搜集。
  11. NSArray进行汉字排序
  12. 百度 翻译 api 使用
  13. typora的基本使用方法(快捷键和基础设置)
  14. 在字符串中查找子字符串
  15. 哈利波特c++千行代码
  16. 【精益生产】用思维导图分析精益生产体系,完整科学
  17. 又双叒叕上榜|九州云入选“2022中国边缘计算企业20强”
  18. 深圳市考计算机素质分数,深圳市考进面分数线要67.75分?!不然很难进面?
  19. Unity Hub 无法登录
  20. python数据分类_在python中将数据分类为具有相同间隔大小的n类别

热门文章

  1. Factory method ‘redisConnectionFactory‘ threw exception; nested exception is java.lang.NoClassDefFou
  2. Linux下的date命令
  3. 查看oracle归档大小,ORACLE RAC按实例统计每天归档日志大小
  4. linux 从github拉取更新_关于拉取请求
  5. 新员工入职表_入职培训流程,五大步骤让员工顺利上岗,来之能战战之能胜
  6. utf8 和utf8mb4 的区别
  7. logback指定不同包下的日志输出到不同的文件
  8. vue 动态的修改样式
  9. Linux 杀掉所有Java进程
  10. android抽屉风格,Android开发实战之拥有Material Design风格的抽屉式布局