enhance styles of preloader

This commit is contained in:
igoradamenko
2018-05-18 18:02:08 +03:00
parent b4d35283ae
commit 359ee35bfc
5 changed files with 69 additions and 89 deletions
@@ -1,35 +0,0 @@
.preloader__bounce {
display: inline-block;
width: 10px;
height: 10px;
margin-right: 3px;
background-color: #333;
border-radius: 100%;
animation: preloaderBounce 1.4s infinite ease-in-out both;
&:first-child {
animation-delay: -.32s;
}
&:nth-child(2) {
animation-delay: -.16s;
}
&:last-child {
margin-right: 0;
}
@keyframes preloaderBounce {
0% {
transform: scale(0);
}
40% {
transform: scale(1);
}
80%, 100% {
transform: scale(0);
}
}
}
+1 -3
View File
@@ -1,5 +1,3 @@
export { default } from './preloader';
require('./preloader.scss');
require('./__bounce/preloader__bounce.scss');
// all styles were moved to iframe.html
@@ -1,5 +0,0 @@
.preloader {
width: 60px;
text-align: center;
font-size: 0;
}
+20 -18
View File
@@ -51,25 +51,27 @@ export default class Root extends Component {
componentDidMount() {
const { sort } = this.state;
api.getConfig().then(config => {
store.set('config', config);
this.setState({ config });
});
Promise.all([
api.getUser()
.then(data => store.set('user', data))
.catch(() => store.set('user', {})),
api.find({ sort, url })
.then(({ comments = [] } = {}) => store.set('comments', comments))
.catch(() => store.set('comments', [])),
]).finally(() => {
this.setState({
isLoaded: true,
user: store.get('user'),
});
setTimeout(this.checkUrlHash);
})
api.getConfig().then(config => {
store.set('config', config);
this.setState({ config });
});
Promise.all([
api.getUser()
.then(data => store.set('user', data))
.catch(() => store.set('user', {})),
api.find({ sort, url })
.then(({ comments = [] } = {}) => store.set('comments', comments))
.catch(() => store.set('comments', [])),
]).finally(() => {
this.setState({
isLoaded: true,
user: store.get('user'),
});
setTimeout(this.checkUrlHash);
});
}
checkUrlHash() {
+48 -28
View File
@@ -13,41 +13,61 @@
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.iframe_preloader {
position: absolute;
left: 0;
right: 0;
margin: 0 auto;
width: 60px;
text-align: center;
font-size: 0;
.preloader {
width: 60px;
text-align: center;
font-size: 0;
}
.iframe_preloader__bounce {
display: inline-block;
width: 10px;
height: 10px;
margin-right: 3px;
background-color: #333;
border-radius: 100%;
animation: iframePreloaderBounce 1.4s infinite ease-in-out both;
.preloader_view_iframe {
margin: 0 auto;
}
.iframe_preloader__bounce:first-child {animation-delay: -.32s;}
.iframe_preloader__bounce:nth-child(2) {animation-delay: -.16s;}
.iframe_preloader__bounce:last-child {margin-right: 0;}
@keyframes iframePreloaderBounce {
0% {transform: scale(0);}
40% {transform: scale(1);}
80%, 100% {transform: scale(0);}
.preloader__bounce {
display: inline-block;
width: 10px;
height: 10px;
margin-right: 3px;
background-color: #333;
border-radius: 100%;
animation: iframePreloaderBounce 1.4s infinite ease-in-out both;
}
.preloader__bounce:first-child {
animation-delay: -.32s;
}
.preloader__bounce:nth-child(2) {
animation-delay: -.16s;
}
.preloader__bounce:last-child {
margin-right: 0;
}
@keyframes iframePreloaderBounce {
0% {
transform: scale(0);
}
40% {
transform: scale(1);
}
80%, 100% {
transform: scale(0);
}
}
</style>
</head>
<body>
<div id="remark42">
<div class="iframe_preloader">
<div class="iframe_preloader__bounce"></div>
<div class="iframe_preloader__bounce"></div>
<div class="iframe_preloader__bounce"></div>
</div>
<div class="preloader preloader_view_iframe">
<div class="preloader__bounce"></div>
<div class="preloader__bounce"></div>
<div class="preloader__bounce"></div>
</div>
</div>
<script>
var lastHeight = 0;