Improved marquee effect
This commit is contained in:
+49
-18
@@ -362,29 +362,60 @@ pre {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* marquee effect */
|
||||||
|
.marqueeContainer { /* wrap the marquee with this to get the correct overflow effect */
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
.marquee {
|
.marquee {
|
||||||
|
-moz-animation: marquee 20s linear infinite;
|
||||||
|
-webkit-animation: marquee 20s linear infinite;
|
||||||
|
animation: marquee 20s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
.marquee.fast { /* for smaller text regions */
|
||||||
-moz-animation: marquee 10s linear infinite;
|
-moz-animation: marquee 10s linear infinite;
|
||||||
-webkit-animation: marquee 10s linear infinite;
|
-webkit-animation: marquee 10s linear infinite;
|
||||||
animation: marquee 10s linear infinite;
|
animation: marquee 10s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 480px) { /* comfortable speed based on screen size */
|
||||||
|
.marquee {
|
||||||
|
-moz-animation: marquee 10s linear infinite;
|
||||||
|
-webkit-animation: marquee 10s linear infinite;
|
||||||
|
animation: marquee 10s linear infinite;
|
||||||
}
|
}
|
||||||
@-moz-keyframes marquee {
|
|
||||||
0% { transform: translateX(100%); }
|
.marquee.fast {
|
||||||
100% { transform: translateX(-100%); }
|
-moz-animation: marquee 5s linear infinite;
|
||||||
}
|
-webkit-animation: marquee 5s linear infinite;
|
||||||
@-webkit-keyframes marquee {
|
animation: marquee 5s linear infinite;
|
||||||
0% { transform: translateX(100%); }
|
}
|
||||||
100% { transform: translateX(-100%); }
|
}
|
||||||
}
|
|
||||||
@keyframes marquee {
|
@-moz-keyframes marquee {
|
||||||
0% {
|
0% { transform: translateX(100%); }
|
||||||
-moz-transform: translateX(100%);
|
100% { transform: translateX(-100%); }
|
||||||
-webkit-transform: translateX(100%);
|
}
|
||||||
transform: translateX(100%) }
|
|
||||||
100% {
|
@-webkit-keyframes marquee {
|
||||||
-moz-transform: translateX(-100%);
|
0% { transform: translateX(100%); }
|
||||||
-webkit-transform: translateX(-100%);
|
100% { transform: translateX(-100%); }
|
||||||
transform: translateX(-100%); }
|
}
|
||||||
}
|
|
||||||
|
@keyframes marquee {
|
||||||
|
0% {
|
||||||
|
-moz-transform: translateX(100%);
|
||||||
|
-webkit-transform: translateX(100%);
|
||||||
|
transform: translateX(100%)
|
||||||
|
}
|
||||||
|
100% {
|
||||||
|
-moz-transform: translateX(-100%);
|
||||||
|
-webkit-transform: translateX(-100%);
|
||||||
|
transform: translateX(-100%);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -34,10 +34,10 @@ class Home extends React.Component {
|
|||||||
//A bit of fun
|
//A bit of fun
|
||||||
let Tagline = () => {
|
let Tagline = () => {
|
||||||
if (this.state.tagline === 'marquee') {
|
if (this.state.tagline === 'marquee') {
|
||||||
return (<p className='marquee'><em>I hope this CSS marquee effect works in all browsers!</em></p>);
|
return (<div className='marqueeContainer'><em><p className='marquee'>I hope this CSS marquee effect works in all browsers!</p></em></div>);
|
||||||
}
|
}
|
||||||
if (this.state.tagline === 'rainbow') {
|
if (this.state.tagline === 'rainbow') {
|
||||||
return (<p className='centered rainbowText'><em>I hope this CSS rainbow effect works in all browsers!</em></p>);
|
return (<em><p className='centered rainbowText'>I hope this CSS rainbow effect works in all browsers!</p></em>);
|
||||||
}
|
}
|
||||||
return (<p className='centered'><em><Markdown source={this.state.tagline} escapeHtml={true} /></em></p>);
|
return (<p className='centered'><em><Markdown source={this.state.tagline} escapeHtml={true} /></em></p>);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user