html卡片布局按钮,Material Design风格动态网格卡片布局UI设计

本文介绍了如何创建一款基于MaterialDesign风格的动态网格卡片布局,具有响应式设计和鼠标悬停时的阴影效果。布局利用Bootstrap网格系统,卡片在页面加载时会逐一淡入,并且在窗口尺寸变化时自动调整大小。核心技术包括CSS过渡效果、jQuery动态显示卡片以及窗口调整时的卡片高度适应。
摘要由CSDN通过智能技术生成

这是一款效果非常炫酷的Material Design风格动态网格卡片布局UI设计效果。在该效果中鼠标滑过卡片时会有阴影效果,当浏览器尺寸改变时,卡片大小会随着改变,整个网格布局有动态变化效果。

使用方法

HTML结构

该动态网格卡片布局的HTML结构基于Bootstrap网格系统来实现。使用时要引入Bootstrap相关文件。

CSS样式

该动态网格卡片布局的CSS样式非常简单,首先带有以col- 开头的class的元素都设置动画过渡效果。开始的时候它们的透明度为0,尺寸为0。

.row [class*="col-"] {

cursor: pointer;

opacity: 0;

-moz-transform: scale(0);

-webkit-transform: scale(0);

transform: scale(0);

-webkit-transition: all 0.3s ease-in-out;

-moz-transition: all 0.3s ease-in-out;

-o-transition: all 0.3s ease-in-out;

transition: all 0.3s ease-in-out;

background-clip: padding-box !important;

border: 5px solid transparent;

}

然后程序开始执行后,会在jQuery代码中使用一个定时器来为这些元素添加.shown class,使它们逐一显示出来。

.row [class*="col-"].shown {

opacity: 1;

-moz-transform: scale(1);

-webkit-transform: scale(1);

transform: scale(1);

}

在鼠标滑过卡片的时候,动态的为卡片添加一些阴影效果。

.row [class*="col-"]:hover {

-webkit-transition: all 0.3s ease-in-out;

-moz-transition: all 0.3s ease-in-out;

-o-transition: all 0.3s ease-in-out;

transition: all 0.3s ease-in-out;

-webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);

-moz-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);

box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);

}

JavaScript

该动态网格卡片布局使用jQuery代码在浏览器窗口改变的时候修改卡片的高度,以及通过定时器为相应的元素添加.shownclass,用于逐一显示卡片。

;(function () {

var elems = $('.row [class*="col-"]');

var setHeight = function (elem) {

$(elem).height($(elem).width() + 30);

};

$(window).resize(function () {

$.each(elems, function (key, value) {

setHeight(elems[key]);

});

});

var i = 0;

x = true;

$(document).click(function () {

if (i === -1 || i == elems.length) {

animate();

x = !x;

}

});

var animate = function () {

setTimeout(function () {

$(elems[i]).toggleClass('shown');

setHeight(elems[i]);

x ? i++ : i--;

if (i < elems.length && i >= 0) {

animate();

}

;

}, 60);

};

animate();

}());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值