고정 바닥글은 고정 바닥글과 혼동되어서는 안 됩니다. 고정 바닥글은 바닥글이 항상 화면 하단(콘텐츠가 페이지를 채우지 않는 경우)에 고정되거나 웹페이지 콘텐츠 하단에 고정되는 패턴입니다. . 고정 바닥글은 사용자가 페이지를 스크롤할 때 화면 하단에 유지됩니다. 다음 코드 편집기 예제는 차이점을 구별합니다.
고정 바닥글:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Sticky Footer</title> </head> <style> body { width: 100%; margin: 0 auto; text-align: center; } header { background: orange; height: 100px; display: inline-block; width: 100%; } p { text-align: left; width: 80%; margin: 0 auto; line-height: 5rem; font-size: 2rem; text-indent: 5rem; } footer { background: black; color: white; position: fixed; bottom: 0; width: 100%; } </style> <body> <header> <h1>This is a header</h1> </header> <div> <h2>This is the website content.</h2> <p> Lorem ipsum dolor, sit amet consectetur adipisicing elit. Aspernatur cum aliquid nostrum dolore sunt ex exercitationem, enim provident quia laudantium, blanditiis repellendus similique in possimus, nisi voluptatem? Quibusdam, suscipit impedit. </p> <p> Lorem ipsum dolor sit amet consectetur adipisicing elit. Facilis veritatis doloremque recusandae similique mollitia quod impedit, rerum inventore beatae quia vel aperiam maiores corrupti tenetur illo praesentium repudiandae a distinctio? </p> <p> Lorem ipsum dolor sit amet consectetur, adipisicing elit. Dicta saepe, reiciendis in maxime perspiciatis cum similique a quis accusamus blanditiis harum voluptates at doloribus autem numquam sint? Qui, tempora ratione! </p> <p> Lorem ipsum dolor sit amet consectetur adipisicing elit. Unde, deserunt placeat? Laborum voluptates minus, adipisci odit repellat corrupti libero! Asperiores delectus quasi debitis mollitia eum et vel recusandae quas esse. </p> <p> Lorem ipsum dolor sit amet consectetur adipisicing elit. Molestias ad dolorem rerum suscipit eos eius libero animi omnis, ea esse distinctio doloremque corporis, a quidem inventore sequi nostrum aut impedit. </p> <p> Lorem ipsum dolor sit, amet consectetur adipisicing elit. Suscipit quod ipsum maiores, minus non atque asperiores corrupti placeat nulla temporibus est libero numquam ad culpa architecto reprehenderit nemo doloribus ipsa? </p> </div> <footer> <h5>This is a fixed footer.</h5> </footer> </body> </html>
고정 바닥글:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Sticky Footer</title> </head> <style> .container { min-height: 100vh; display: flex; flex-direction: column; } .page-header, .page-footer { flex-shrink: 0; } h1, h2, h3, h4, h5 { text-align: center; } .orange { background: orange; } .page-body { background: blue; flex-grow: 1; } .page-body p { text-align: left; width: 80%; margin: 0 auto; line-height: 4rem; font-size: 1.8rem; text-indent: 4rem; } .black { background: black; color: white; } </style> <body> <div class="container"> <header class="page-header orange"> <h1>This is a header</h1> </header> <div class="page-body"> <h2>This is the website content.</h2> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> <p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Molestias neque impedit, libero, officiis repudiandae numquam necessitatibus enim sapiente hic, quam dolores. Atque porro assumenda molestiae. Ipsum laudantium qui odio itaque.</p> </div> <footer class="page-footer black"> <h5>This is a sticky footer.</h5> </footer> </div> </body> </html>
결론
고정 바닥글은 위치를 사용하여 화면 하단에 유지합니다. 두 번째는 flexbox의 flex-grow 및 flex-shrink 속성을 사용하여 바닥글을 콘텐츠 맨 아래에 유지합니다. 각 코드 예제에서 바닥글 특성의 차이점에 유의하십시오.
위의 샌드박스 환경에서 플레이하면 이러한 패턴을 이해하는 데 도움이 됩니다. 변화를 주고 다른 값으로 실험해 보세요.