최근에 프로젝트를 작성하다가 일부 페이지가 한 화면을 차지하지 못하고, 하단인 푸터가 상단에 가까워서 외관에 큰 영향을 미치게 되어 검색해본 결과입니다
이 문제를 해결하는 가장 좋은 방법 좋은 방법은 CSS3에서 제공하는 고급 레이아웃 모델인 Flexbox를 사용하여 적응 가능한 레이아웃을 만드는 것입니다.
아래 코드를 실행해 보겠습니다
<body> <p id="header">...</p> <p id="content">...</p> <p class="footer">...</p> </body>
html{ height: 100%; } body{ display: flex; flex-direction: column; height: 100%; } #header{ /* 我们希望 header 采用固定的高度,只占用必须的空间 */ /* 0 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 0 0 auto; } #content{ /* 将 flex-grow 设置为1,该元素会占用全部可使用空间 而其他元素该属性值为0,因此不会得到多余的空间*/ /* 1 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 1 0 auto; } #footer{ /* 和 header 一样,footer 也采用固定高度*/ /* 0 flex-grow, 0 flex-shrink, auto flex-basis */ flex: 0 0 auto; }
flex-deraction:column을 사용하여 페이지 구조를 수직으로 정렬하고(flex는 기본적으로 수평으로 정렬됨) 동시에 html 및 body 요소의 높이를 100%로 설정합니다. 전체 화면을 가득 채울 수 있습니다.
flex에 포함된 세 가지 속성은 위에서 사용됩니다.
flex-grow: 할당 가능한 공간에 대한 동일한 컨테이너의 요소 할당 비율 및 확장 비율
flex-shrink: If 공간 부족, 요소 축소율
flex-basis: 요소 확장의 기본 값
즉, 머리글과 바닥글은 차지해야 할 공간만 차지하고 나머지 공간은 모두 차지합니다. 메인 콘텐츠 영역에 제공됩니다
자, 이제 페이지 콘텐츠의 양에 관계없이 바닥글이 하단에 유지되도록 할 수 있습니다.
요약: 위 내용이 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다. 더 많은 관련 튜토리얼을 보려면 CSS 비디오 튜토리얼 , CSS3 비디오 튜토리얼 을 방문하세요!
관련 권장 사항:
위 내용은 PC측에서는 페이지가 완전히 열렸는지 여부에 관계없이 바닥글을 하단에 유지합니다(위치 지정 필요 없음).의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!