css3 flex 实现常见页面布局

2023-11-03

css3 flex 实现常见页面布局

FlexFlexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。
任何一个容器都可以指定为Flex布局: .box{display:flex;}
行内元素也可以使用Flex布局: .box{display:inline-flex;}
Webkit内核的浏览器,必须加上-webkit前缀: .box{display:-webkit-flex;/* Safari */display:flex;}
注意,设为Flex布局以后,子元素的float、clearvertical-align属性将失效。

上中下布局

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="utf-8">
	<title>flex 布局</title>
	<style type="text/css">
		*{
			padding:0;
			margin:0;
		}
		header{  		
			height:200px;
  			background:#C4DFEB;
		}
		footer{
  			height:200px;
  			background:pink;
		}
		.container{
  			display:flex;
  			display: -webkit-flex;
  			flex-direction:column;
  			height:100vh;
		}
		main{
			flex-grow:1;
		}
	</style>
</head>
<body>
	<div class="container">
     	<header>header</header>
     	<main>main</main>
     	<footer>footer</footer>
   </div>
</body>
</html>

在这里插入图片描述
(1)flex-direction:column;使整体布局从上到下排列

(2)flex-grow:1;使main元素填充剩余空间。

左中右三列布局

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
    <title>flex 布局</title>
  <style> 
    *{
      padding:0;
      margin:0;
    }
    body,html{
      width: 100%;
      height: 100vh;
      min-width: 800px;
    } 
    .container{
      width: 100%;
      height: 100vh;
      display:flex;
      display: -webkit-flex; /* Safari */
      flex-direction: row;
    }
    .container>.left,.right{
      width: 200px;
      height: 100vh;
      background-color: #ccc;
    }
    .container>.item{
      flex:1; 
      height:100%;
      background: #abcdef;
    }
  </style>
</head>
<body>
  <div class="container">  
    <div class="left">left</div>
    <main class="item">main</main>
    <div class="right">right</div>
  </div>
</body>
</html>

flex-direction:row;使整体布局从左到右排列
在这里插入图片描述

圣杯布局

圣杯布局格式要求:

页面从上到下为头部、中部、脚部;头部、脚部定高,不可伸缩;中部高度自适应。

中部三列式布局:左右两列定宽,不可伸缩;中间内容区自适应。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
    <title>flex 布局</title>
  <style> 
    *{
      padding:0;
      margin:0;
    }
    body,html{
      height: 100vh;
      display:flex;
      /* 改变主轴的排列方式 */
      flex-direction: column;/*布局从上向下*/
      min-width: 800px;
    } 
    header,footer{
      display: flex;
      display: -webkit-flex; /* Safari */
      background: #ccc;
      width: 100%;
      height: 100px;
      justify-content: center;/*水平居中*/
      align-items: center;/*垂直居中*/
    }
    .container{
        /* 
        flex:1指的是:中部区域自由伸缩
        */
      flex:1;
      display: flex;
    }
    .container>.left{
      flex:0 0 150px;/* 左右两列固定宽 */  
    }
    .container .content{
      flex: 10;
      background: pink;
    }
    .container>.right{
      flex:0 0 150px;/* 左右两列固定宽 */
    }
  </style>
</head>
<body>
  <header> <p>Header</p> </header>
  <div class="container">  
    <div class="left"></div>
    <main class="content"></main>
    <div class="right"></div>
  </div>
  <footer> <p>Footer</p> </footer>
</body>
</html>

在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

css3 flex 实现常见页面布局 的相关文章

随机推荐

  • vue3 driver.js 引导页 使用方法

    先展示一下效果 ps 不要在意没对齐 第一步 下载 deiver js npm i driver 第二步 在组件中引入 import Driver from driver js import driver js dist driver mi
  • 交叉熵理解

    Likelihood 似然 与 Maximun Likelihood Estimation 似然与概率 概率是已知模型的参数 求某个事情发生的可能性 概率可以表示为 p x p x Thet
  • 《关基保护要求》实施,应用层零信任将发挥重要作用

    2023年5月1日起 国家标准 GB T 39204 2022 信息安全技术 关键信息基础设施安全保护要求 正式实施 这是继 关键信息基础设施安全保护条例 发布后首个正式发布的针对性标准 也代表着关键信息基础设施保护工作部门开展监管 运营者
  • VS2022集成代码规范组件StyleCop.Analyzers应用于解决方案

    背景 项目团队刚刚组件 每个人的代码编写习惯都不一样 希望用一款代码规范的检查插件来规范团队成员编写代码的习惯 在网上找了一遍之后 感觉StyleCop Analyzers比较适用 集成方法 1 NuGet搜索StyleCop Analyz
  • python 中range(10)什么意思_range什么意思python编程【面试题详解】

    今天爱分享给大家带来range什么意思python编程 面试题详解 希望能够帮助到大家 今天来谈一谈关于Python中range 的作用 和我个人的理解 range的中文意思是 范围 幅度 或者是在xxx之间变动 函数原型 range st
  • linux 更改用户权限

    最近一直在忙项目上的事情 没时间更新 项目基本上已经接近尾声 主要是一些部署的收尾工作 在部署的过程中 也遇到了一些问题 先慢慢记录吧 今天主要记录的是 如何提升普通运行为管理员身份 在日常开发过程中 调用第三方程序 该程序由于内部实现的原
  • Dynamics CRM和企业微信集成(一)理论方案

    Dynamics CRM和企业微信集成 一 理论方案 方案简述 工具类都差不多就位了 那么今天开始写点有用的东西 之前的项目有做过CRM和企业微信集成 现在总结一下吧 方案简述 关键是登陆时 把微信ID和CRM用户做绑定 阅读企业微信的AP
  • 小米笔记本pro 双硬盘双系统 opencore引导安装黑苹果

    个人情况说明 小米笔记本PRO 15 6 项目 参数 CPU i5 8250U GPU MX150 内存 8G 硬盘1 三星pm961 256g 硬盘2 intel 240g 注意事项 三星pm981装黑苹果会有问题 嫌麻烦的话建议直接换硬
  • webpack打包后引用cdn的js_webpack系列-externals配置使用(CDN方式引入JS)

    如果需要引用一个库 但是又不想让webpack打包 减少打包的时间 并且又不影响我们在程序中以CMD AMD或者window global全局等方式进行使用 一般都以import方式引用使用 那就可以通过配置externals 这样做的目的
  • commitlint无效 commit-msg不执行

    一 安装commitlint yarn add commitlint config conventional commitlint cli D 二 commitlint无效 commit msg不执行 解决办法 1 删除package js
  • 【spring5学习笔记】-----bean的多实例与单实例

    bean的多实例与单实例 首先介绍概念 什么是spring中bean的多实例和单实例 在上面这个例子中 我们两次调用context的getBean 方法得到的两个对象的引用值是相等的 这说明此时spring是单实例的 两次调用方法得到的是同
  • tensorflow生成随机数及实现随机采样

    文章目录 1 生成随机数 2 随机采样 2 1 实例代码 3 随机打乱数据 1 生成随机数 参考1 tf random normal 从正态分布中输出随机值 tf random normal shape mean 0 0 stddev 1
  • linux创建文件

    转载自 https www cnblogs com lclq p 5741852 html Linux命令 1 创建文件 1 可以使用cat创建一个新的文件 命令 cat gt gt filename 使用cat创建文件时 以系统默认的文件
  • jdk1.8与tomcat7如何兼容使用

    jdk1 8与tomcat7兼容使用 只需要改一个设置 window preperence找到此页面 点击edit将jre设置更换为1 8
  • matlab绘制脑电地形图,脑电地形图的原理及其结果

    脑电地形图 brain electrical activity mapping BEAM 是将脑电信号输人电子计算机进行处理后转换为一种可定位和定量性分析 并用不同颜色的图像显示的检查技术 其优点是可将脑功能变化与形态定位结合 图像直观 形
  • 计算机视觉领域的一些牛人博客

    转载自 blog csdn net carson2005 以下链接是关于计算机视觉 ComputerVision CV 相关领域的网站链接 其中有CV牛人的主页 CV研究小组的主页 CV领域的paper 代码 CV领域的最新动态 国内的应用
  • Linux Select

    文章目录 1 函数原型 1 1 函数参数说明 1 2 返回值 2 相关数据结构与函数 2 1 struct timeval 2 2 fd set 3 编程模型 4 关于select的阻塞 4 select总结 5 Unix5中IO模型 5
  • 服务器不稳定怎么解决?常见的4种问题和6种处理方法

    一 常见的4种问题 1 机房或服务器问题 联系服务器提供商 要求协助排查故障并解决或者更换硬件 2 软件和硬件故障故障问题 要求服务商更换服务器 或者升级服务器 3 网站本身问题 通过优化网站结构 减少垃圾代码等方式来优化网站访问速度 4
  • flutter dart判断文件是否存在

    File txt File data data sms com smsexample files 2 txt var dir bool await txt exists 返回真假 if dirbool
  • css3 flex 实现常见页面布局

    css3 flex 实现常见页面布局 上中下布局 左中右三列布局 圣杯布局 Flex是Flexible Box的缩写 意为 弹性布局 用来为盒状模型提供最大的灵活性 任何一个容器都可以指定为Flex布局 box display flex 行