CSS 【实战】 “四合院”布局

简介: CSS 【实战】 “四合院”布局

效果预览

页面要求:

  • 上下固定高度
  • 左右固定宽度
  • 中间区域自适应宽高
  • 整个页面内容撑满全屏,没有滚动条

技术要点

使用 html5 语义化标签

  • header 网页内的标题区域
  • nav 导航区域
  • aside 侧边栏
  • footer 页脚区域
  • section 内容分区
  • article 文章区域

清除浏览器默认的内外边距

html,
body {
  padding: 0px;
  margin: 0px;
}

否则会出现滚动条

设置内容高度为 100 vh 撑满屏幕

body {
  height: 100vh;
}

另一种方案是设置 html 和 body 高度为 100%

html,body {
  height:100%
}

flex实现自适应布局

垂直方向

body {
  display: flex;
  flex-direction: column;
}
#mainBox {
  flex-grow: 1;
}

水平方向

#mainBox {
  display: flex;
}
#centerBox {
  flex-grow: 1;
}

演示代码

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>CSS “四合院”布局</title>
    <style>
      html,
      body {
        padding: 0px;
        margin: 0px;
      }

      body {
        display: flex;
        flex-direction: column;
        height: 100vh;
      }
      header {
        height: 100px;
        background-color: blue;
      }

      footer {
        height: 60px;
        background-color: black;
      }
      #mainBox {
        flex-grow: 1;
        background-color: gray;
        display: flex;
      }
      #leftBox {
        width: 300px;
        background-color: red;
      }
      #centerBox {
        flex-grow: 1;
      }
      #rightBox {
        width: 200px;
        background-color: yellow;
      }
    </style>
  </head>
  <body>
    <header></header>
    <section id="mainBox">
      <aside id="leftBox"></aside>
      <article id="centerBox"></article>
      <aside id="rightBox"></aside>
    </section>
    <footer></footer>
  </body>
</html>

目录
相关文章
|
1月前
|
前端开发 UED 容器
在 CSS 中使用 Flex 布局实现页面自适应时需要注意什么?
【10月更文挑战第22天】在使用 Flex 布局实现页面自适应时,需要对其基本原理和特性有深入的理解,同时结合具体的布局需求和场景,进行细致的调整和优化。通过合理的设置和注意事项的把握,才能实现理想的自适应效果,提升用户体验。还可以根据实际情况进行更深入的探索和实践,以不断提升 Flex 布局的应用能力。
|
1月前
|
前端开发 JavaScript 开发者
掌握 CSS 弹性布局(Flexbox):构建复杂页面布局的高效秘籍与实战案例
CSS弹性布局(Flexbox)是现代网页设计中构建复杂页面布局的高效工具。本文将深入浅出地介绍Flexbox的核心概念、使用技巧及实际应用案例,帮助读者快速掌握这一强大布局方法。
|
1月前
|
前端开发 容器
实现CSS品字布局
【10月更文挑战第27天】
|
2月前
|
前端开发 容器
使用 CSS Grid 布局实现响应式设计
【10月更文挑战第1天】使用 CSS Grid 布局实现响应式设计
68 4
|
2月前
|
前端开发 容器
前端技术分享:利用CSS Grid布局实现响应式设计
【10月更文挑战第1天】前端技术分享:利用CSS Grid布局实现响应式设计
|
3月前
|
前端开发 容器
css布局-弹性布局学习笔记
这篇文章是关于CSS弹性布局的学习笔记,详细介绍了flex容器和元素的相关属性,包括flex-direction、flex-wrap、flex-flow、justify-content、align-items、align-content以及order、flex-grow、flex-shrink、flex-basis、flex和align-self等,解释了这些属性在弹性盒子布局中的作用和用法。
|
2月前
|
前端开发 JavaScript
JavaScript动态渲染页面爬取——CSS位置偏移反爬案例分析与爬取实战
JavaScript动态渲染页面爬取——CSS位置偏移反爬案例分析与爬取实战
42 0
|
3月前
|
JavaScript 前端开发
网页前端课程设计-【模仿】香港中文大学官网,轮播图及div+css布局,js的dom操作
这篇文章介绍了如何模仿香港中文大学官网进行网页前端课程设计,包括使用div+css布局、js的DOM操作以及实现轮播图等技术细节。
|
4月前
|
前端开发 Java UED
JSF 面向组件开发究竟藏着何种奥秘?带你探寻可复用 UI 组件设计的神秘之路
【8月更文挑战第31天】在现代软件开发中,高效与可维护性至关重要。JavaServer Faces(JSF)框架通过其面向组件的开发模式,提供了构建复杂用户界面的强大工具,特别适用于设计可复用的 UI 组件。通过合理设计组件的功能与外观,可以显著提高开发效率并降低维护成本。本文以一个具体的 `MessageComponent` 示例展示了如何创建可复用的 JSF 组件,并介绍了如何在 JSF 页面中使用这些组件。结合其他技术如 PrimeFaces 和 Bootstrap,可以进一步丰富组件库,提升用户体验。
62 0

热门文章

最新文章