Animierte Fußzeile

Diese animierte Fußzeile wird vom unteren Rand der Seite eingeblendet. Dieser Effekt wird mit der CSS-Eigenschaft transform erzeugt. Das Ergebnis ist eine leistungsstarke Animation, die keine Layoutverschiebungen verursacht.

<div id="banner" class="banner">
 
<button id="close-button" class="close-button" aria-label="close" tabindex="0"></button>
 
<div>
   
<h1>Notice</h1>
    Lorem ipsum dolor sit amet.
 
</div>
</div>

        body
{
   
overscroll-behavior-y: none;
   
font-family: system-ui;
   
padding: 2em;
   
background-color: #f4f4f4;
}
.banner {
   
animation: slideIn 1000ms ease-in-out;
   
position: fixed;
   
left: 0;
   
bottom: 0;
   
right: 0;
   
padding: 1rem;
   
background-color: white;
   
box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
@keyframes slideIn {
    from
{
       
transform: translateY(100vh);
   
}
    to
{
       
transform: translateY(0vh);
   
}
}
.close-button {
   
background: transparent;
   
border: none;
   
padding: 1em;
   
font-size: 1em;
   
position: absolute;
   
right: 0;
   
top: 0;
   
cursor: pointer;
}
       

        document
.getElementById("close-button").onclick = () => {
    document
.getElementById("banner").style.display = "none";
}