I have a quirk on a website I am developing. I am using absolute positioning to place H1-headings to the left side of the content. In the full code, this only happens on screen sizes larger than 1280px and the effect is much more severe than in this fiddle I made to demonstrate. As you can see, the heading "waits" until the animation is completed before it jumps into its absolute position.
How can I avoid this jump? I'd really just like it to animate into the correct position from the start. There will always be just one H1 heading with this absolute positioning per page. I'm using absolute positioning because the heading could originate from anywhere on the page. If there is a better way to do this I am all ears.
https://jsfiddle.net/v2keq3hy/5/
* {
font-family: Sans-serif;
}
section {
width:1200px;
margin:0 auto;
-webkit-animation: fadein 1s; /* Safari, Chrome and Opera > 12.1 */
-moz-animation: fadein 1s; /* Firefox < 16 */
-o-animation: fadein 1s; /* Opera < 12.1 */
animation: fadein 1s;
}
@keyframes fadein {
from { opacity: 0; transform: translate(100px);}
to { opacity: 1; transform: translate(0);}
}
@-moz-keyframes fadein {
from { opacity: 0; transform: translate(100px);}
to { opacity: 1; transform: translate(0);}
}
@-webkit-keyframes fadein {
from { opacity: 0; transform: translate(100px);}
to { opacity: 1; transform: translate(0);}
}
@-o-keyframes fadein {
from { opacity: 0; transform: translate(100px);}
to { opacity: 1; transform: translate(0);}
}
article * {
max-width: 600px;
margin-left: auto;
margin-right: auto;
}
article p {
margin: 19px auto 19px auto;
}
article h1 {
position: absolute;
top: 150px;
max-width: 250px;
margin: 0 auto;
}
<section>
<article>
<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia
voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi
tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</p>
<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia
voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi
tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</p>
<h1>
Lorem Impsum
</h1>
<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia
voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi
tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</p>
<p>Sed ut perspiciatis unde omnis iste natus error sit voluptatem accusantium doloremque laudantium, totam rem aperiam, eaque ipsa quae ab illo inventore veritatis et quasi architecto beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem quia
voluptas sit aspernatur aut odit aut fugit, sed quia consequuntur magni dolores eos qui ratione voluptatem sequi nesciunt. Neque porro quisquam est, qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit, sed quia non numquam eius modi
tempora incidunt ut labore et dolore magnam aliquam quaerat voluptatem.</p>
</article>
</section>