css skeleton loading

css & :empty

See the Pen Skeleton Screen with CSS by xgqfrms
(@xgqfrms) on CodePen.

dom

https://www.italki.com/contacts/teacher/favorited

 <div class="teacher-card">
<div class="teacher-card-left">
<div class="teacher-card-detail-top">
<div class="teacher-card-avatar">
<div class="teacher-card-avatar-placeholder"></div>
</div>
<div class="teacher-card-information">
<div class="teacher-card-name-placerholder"></div>
<div class="teacher-card-type-placerholder"></div>
<div class="teacher-card-divider"></div>
<div class="teacher-card-small-head-placeholder"></div>
<div class="teacher-card-small-languages-placeholder"></div>
</div>
</div>
<div class="teacher-card-detail-bottom">
<div class="teacher-card-rating">
<div class="teacher-card-stars">
<div class="teacher-card-rating-placeholder"></div>
</div>
</div>
<div class="teacher-card-information">
<div class="teacher-card-small-head-placeholder"></div>
<div class="teacher-card-small-speaks-placeholder"></div>
<div class="teacher-card-rate">
<div class="teacher-card-hourly">
<div class="teacher-card-small-head-placeholder"></div>
<div class="teacher-card-small-hourly-placeholder"></div>
</div>
<div class="teacher-card-trial">
<div class="teacher-card-small-head-placeholder"></div>
<div class="teacher-card-small-hourly-placeholder"></div>
</div>
</div>
</div>
</div><i class="teacher-card-favorite"></i>
</div>
<div class="teacher-card-right">
<div class="teacher-card-tab-placeholder"></div>
</div>
</div>

@charset "UTf-8"; /* app.css */ :root {
--color: #000;
--default-color: green;
--new-color: #0f0;
} html{
font-size: 62.5%;
/* 10px = 1rem */
} * {
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
} html, body, div, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, object, code, legend, button, input, textarea, th, td, a, img, video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
} *, :after, :before {
box-sizing: border-box;
} .teacher-card {
position: relative;
display: flex;
margin-bottom: 20px;
} @-webkit-keyframes pulse {
0% {
-webkit-transform: scaleX(1);
transform: scaleX(1)
} 50% {
-webkit-transform: scale3d(1.0075,1.0075,1.0075);
transform: scale3d(1.0075,1.0075,1.0075)
} to {
-webkit-transform: scaleX(1);
transform: scaleX(1)
}
} @keyframes pulse {
0% {
-webkit-transform: scaleX(1);
transform: scaleX(1)
} 50% {
-webkit-transform: scale3d(1.0075,1.0075,1.0075);
transform: scale3d(1.0075,1.0075,1.0075)
} to {
-webkit-transform: scaleX(1);
transform: scaleX(1)
}
} .teacher-card-left {
position: relative;
padding: 25px 25px 20px;
width: 564px;
min-height: 284px;
border-radius: 6px;
background: #fff;
box-shadow: 0 7px 25px 0 rgba(0,0,0,.1);
cursor: pointer
} .teacher-card-right {
padding: 25px 20px 20px;
width: 386px;
border-radius: 0 6px 6px 0;
background: #fff;
box-shadow: 5px 7px 25px 0 rgba(0,0,0,.1);
} .teacher-card-detail-bottom,
.teacher-card-detail-top {
display: flex;
} .teacher-card-avatar {
display: flex;
align-items: flex-start;
text-align: center;
} .teacher-card-avatar-placeholder,
.teacher-card-tab-placeholder {
background-image: -webkit-gradient(linear,right top,left top,from(#ccc),color-stop(0,#eee),color-stop(0,#ccc),to(#eee));
background-image: -webkit-linear-gradient(right,#ccc,#eee,#ccc 0,#eee);
background-image: linear-gradient(270deg,#ccc,#eee 0,#ccc 0,#eee);
} .teacher-card-avatar-placeholder {
margin: 0 auto;
width: 100px;
height: 100px;
border-radius: 50%;
box-shadow: 0 5px 15px 0 rgba(0,0,0,.2);
} .teacher-card-information {
margin-left: 30px;
flex: 1 1;
} .teacher-card-name-placerholder {
margin-bottom: 10px;
width: 170px;
height: 20px;
border-radius: 10px;
background-image: -webkit-gradient(linear,right top,left top,from(#ccc),color-stop(0,#eee),color-stop(0,#ccc),to(#eee));
background-image: -webkit-linear-gradient(right,#ccc,#eee,#ccc 0,#eee);
background-image: linear-gradient(270deg,#ccc,#eee 0,#ccc 0,#eee);
} .teacher-card-small-head-placeholder,
.teacher-card-type-placerholder {
height: 15px;
border-radius: 7.5px;
background-image: -webkit-gradient(linear,right top,left top,from(#ccc),color-stop(0,#eee),color-stop(0,#ccc),to(#eee));
background-image: -webkit-linear-gradient(right,#ccc,#eee,#ccc 0,#eee);
background-image: linear-gradient(270deg,#ccc,#eee 0,#ccc 0,#eee);
} .teacher-card-divider {
margin: 12px 0;
width: 15px;
height: 2px;
border-radius: 1px;
background: #ff4338;
} .teacher-card-small-head-placeholder {
margin-bottom: 10px;
width: 80px;
} .teacher-card-small-languages-placeholder,
.teacher-card-small-speaks-placeholder {
height: 20px;
border-radius: 10px;
background-image: -webkit-gradient(linear,right top,left top,from(#ccc),color-stop(0,#eee),color-stop(0,#ccc),to(#eee));
background-image: -webkit-linear-gradient(right,#ccc,#eee,#ccc 0,#eee);
background-image: linear-gradient(270deg,#ccc,#eee 0,#ccc 0,#eee);
} .newteacher-card-favorite,
.teacher-card-favorite {
position: absolute;
top: 25px;
right: 25px;
cursor: pointer;
}
.teacher-card-favorite {
width: 30px;
height: 30px;
background: url(heart-empty.96354e1f.svg) no-repeat 50%/30px 30px;
background: url(https://www.italki.com/static/media/heart-empty.96354e1f.svg) no-repeat 50%/30px 30px;
/* background: url(/static/media/heart-empty.96354e1f.svg) no-repeat 50%/30px 30px; */
} .teacher-card-right {
padding: 25px 20px 20px;
width: 386px;
border-radius: 0 6px 6px 0;
background: #fff;
box-shadow: 5px 7px 25px 0 rgba(0,0,0,.1);
} .teacher-card-tab-placeholder {
margin: 50px auto 0;
width: 343px;
height: 195px;
border-radius: 6px;
}

skeleton components

https://ant.design/components/skeleton-cn/

import { Skeleton, Button } from 'antd';

class Demo extends React.Component {
state = {
loading: false,
}; showSkeleton = () => {
this.setState({ loading: true });
setTimeout(() => {
this.setState({ loading: false });
}, 3000);
}; render() {
return (
<div className="article">
<Skeleton loading={this.state.loading}>
<div>
<h4>Ant Design, a design language</h4>
<p>
We supply a series of design principles, practical patterns and high quality design
resources (Sketch and Axure), to help people create their product prototypes
beautifully and efficiently.
</p>
</div>
</Skeleton>
<Button onClick={this.showSkeleton} disabled={this.state.loading}>
Show Skeleton
</Button>
</div>
);
}
} ReactDOM.render(<Demo />, mountNode);



xgqfrms 2012-2020

www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


css skeleton loading & skeleton components的更多相关文章

  1. 利用animation和text-shadow纯CSS实现loading点点点的效果

    经常在网上看到loading状态时的点点点的动态效果,自己也用JS写了一个,思路是使用一个计数参数,然后在需要添加点的元素后面利用setInterval一个一个加点,当计数到3时,把点变为一个--写完 ...

  2. 使用css实现loading的加载

    使用css实现loading的加载的效果图 html代码 <div id="caseVerteClaire"> <div id="transform&q ...

  3. 基于Vuejs实现 Skeleton Loading 骨架图

    原文地址:https://cloud.tencent.com/developer/article/1006169 https://mp.weixin.qq.com/s/qmyn6mGrO6hRKuvK ...

  4. 纯js+css实现loading等待效果

    此插件是基于jqueryUI的widget,下面是具体实现代码 第一部分css: /***loading***/ .loading-box{ position:absolute; text-align ...

  5. css 三彩loading

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title&g ...

  6. css动画 loading

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 6种纯css实现loading效果

    1. <div id="loadingWrap1"> <span></span> <span></span> <s ...

  8. css skeleton & web app skeleton

    css skeleton & web app skeleton skeleton https://www.cnblogs.com/xgqfrms/p/10437258.html https:/ ...

  9. images & Skeleton

    images & Skeleton image placeholder & loading ... skeleton.css https://github.com/dhg/Skelet ...

随机推荐

  1. Optimistic concurrency control 死锁 悲观锁 乐观锁 自旋锁

    Optimistic concurrency control https://en.wikipedia.org/wiki/Optimistic_concurrency_control Optimist ...

  2. 长连接开发踩坑之netty OOM问题排查实践

    https://mp.weixin.qq.com/s/jbXs7spUCbseMX-Vf43lPw 原创: 林健  51NB技术  2018-07-13

  3. 20201102gryz模拟赛解题报告

    简述我的苦逼做题经历 考的是NOIP2017day1原题, 开始看到小凯的疑惑时感觉特水,因为这题初中老师讲过, 很nice的秒切 T2发现是个大模拟,虽然字符串不太会用,但起码题意很好理解 边打代码 ...

  4. 三:SpringBoot-配置系统全局异常映射处理

    三:SpringBoot-配置系统全局异常映射处理 1.异常分类 1.1 业务异常 1.2 系统异常 2.自定义异常处理 2.1 自定义业务异常类 2.2 自定义异常描述对象 2.3 统一异常处理格式 ...

  5. Cisco的互联网络操作系统IOS和安全设备管理器SDM__备份和恢复Cisco 配置

    对路由器配置进行的任何修改存储在running-config文件中.如果在修改了running-config后没有输入copy run start命令,那么路由器重载或掉电后,修改的内容会丢失. 1. ...

  6. SSL与HTTPS协议

    1.SSL 1.1 什么是SSL SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及 ...

  7. 最短路-SPFA算法&Floyd算法

    SPFA算法 算法复杂度 SPFA 算法是 Bellman-Ford算法 的队列优化算法的别称,通常用于求含负权边的单源最短路径,以及判负权环. SPFA一般情况复杂度是O(m)最坏情况下复杂度和朴素 ...

  8. OpenCV4.4.0 安装测试 Installation & Examination (Ubuntu18.04, Ubuntu 20.04)

    OpenCV4.4.0 安装测试 Installation & Examination (Ubuntu18.04, Ubuntu 20.04) 单纯简单的 OpenCV 安装配置方法,在这个地 ...

  9. Snapshot查询所有快照

    今天使用snapshot list这个命令时查询出了所有的表,没注意下面报错: NoMethodError:undefined method '-@' for #<Array:0x54326e9 ...

  10. Codeforces Round #659 (Div. 2) A. Common Prefixes

    题目链接:https://codeforces.com/contest/1384/problem/A 题意 构造 $n+1$ 个字符串,使得 $n$ 对相邻字符串的相同前缀长度对应于数组 $a$ . ...