>  기사  >  웹 프론트엔드  >  PC측에서는 페이지가 완전히 열렸는지 여부에 관계없이 바닥글을 하단에 유지합니다(위치 지정 필요 없음).

PC측에서는 페이지가 완전히 열렸는지 여부에 관계없이 바닥글을 하단에 유지합니다(위치 지정 필요 없음).

青灯夜游
青灯夜游앞으로
2018-10-10 16:22:542835검색

최근에 프로젝트를 작성하다가 일부 페이지가 한 화면을 차지하지 못하고, 하단인 푸터가 상단에 가까워서 외관에 큰 영향을 미치게 되어 검색해본 결과입니다

이 문제를 해결하는 가장 좋은 방법 좋은 방법은 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 비디오 튜토리얼 을 방문하세요!

관련 권장 사항:

php 공공 복지 교육 비디오 튜토리얼

CSS 온라인 매뉴얼

CSS3 온라인 매뉴얼

div/css 그래픽 튜토리얼

위 내용은 PC측에서는 페이지가 완전히 열렸는지 여부에 관계없이 바닥글을 하단에 유지합니다(위치 지정 필요 없음).의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 cnblogs.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제