CSS:布局篇_两边顶宽中间自适应(圣杯布局&双飞翼布局)

圣杯布局以及双飞翼布局解决的是两边顶宽中间自适应的三栏布局,且中间栏优先渲染。

圣杯布局实现思路:

用一个div作为容器依次包住中,左,右。中以width:100%作为主体,中左右div均以浮动float:left,左右均以margin负边距实现三栏并排。左右div使用相对定位,让各自的视图向相应方向偏移自身大小。

圣杯布局

html结构

    <div class="header">
<h4>header</h4>
</div>
<div class="container">
<div class="middle">
<h4>middle</h4>
</div>
<div class="left">
<h4>left</h4> </div>
<div class="right">
<h4>right</h4>
</div>
</div>
<div class="footer">
<h4>footer</h4>
</div>

html结构

css样式

    <style type="text/css">
*{margin: 0;padding: 0;}
body{min-width: 700px;}
.header,.footer{
background: #ff9999;text-align: center;height: 50px;line-height: 50px;
}
.middle,.left,.right{
position: relative;
float: left;
min-height: 130px;
line-height: 130px;
}
.container{
padding: 0 220px 0 200px;
overflow: hidden;
position: relative;
}
.left{
margin-left:-100%;
left: -200px;
background: #99ffff;
width: 200px;
}
.right{
background: #ccff99;
width: 220px;
margin-right:-220px;
}
.middle{
width: 100%;
background: #ccffff;
word-break: break-all;
}
.footer{
}
</style>

css样式

双飞翼布局

双飞翼布局实现思路:

中以width:100%作为主体。中左右div均以浮动float:left排列。左右div均以margin负边距,让三栏并列,中(主体)div使用margin-left,margin-right压缩主体宽度。

html结构

    <!--头部-->
<div class="header">
<h4>header</h4>
</div>
<!--主体-->
<div class="main">
<div class="main-inner">
<h4>main</h4>
</div>
</div>
<!--左侧-->
<div class="sub">
<h4>sub</h4>
</div>
<!-- 右侧 -->
<div class="extra">
<h4>extra</h4>
</div>
<!-- 底部 -->
<div class="footer">
<h4>footer</h4>
</div>

html结构

css样式

    <style type="text/css">
*{margin: 0;padding: 0;}
body{min-width: 700px;}
.header,.footer{
border: 1px solid #333;
background: #f99;
text-align: center;
height: 50px;
line-height: 50px;
}
.sub,.main,.extra{
float: left;min-height: 130px;
line-height: 130px;text-align: center;
}
.sub{
width: 200px;background: #9ff;margin-left: -100%;
}
.extra{
width: 220px;background: #cff;margin-left: -220px;
}
.main{
width: 100%;
}
.main .main-inner{
background: #cf9;
min-height: 130px;
margin-left: 200px;
margin-right: 220px;
}
.footer{
clear: both;
}
</style>

css样式

CSS:布局篇_两边顶宽中间自适应(圣杯布局&双飞翼布局)的更多相关文章

  1. CSS(五)圣杯,双飞翼布局

    双飞翼布局 <style> *{ margin:; padding:; } .main{ width: 100%; height: 200px; background: pink; flo ...

  2. 三栏布局的三个典型方法(圣杯、双飞翼、flex)

    聊聊三栏布局----左右定宽,中间自适应. 效果图: 圣杯布局 <!DOCTYPE html> <html> <head lang="en"> ...

  3. CSS 布局实例系列(二)如何通过 CSS 实现一个左边固定宽度、右边自适应的两列布局

    最近在百度 IFE 训练营中看见的一道题目: 用两种不同的方法来实现一个两列布局,其中左侧部分宽度固定.右侧部分宽度随浏览器宽度的变化而自适应变化  个人总结出如下三种实现思路: 通过绝对定位实现 S ...

  4. 如何用CSS实现左侧宽度固定,右侧自适应(两栏布局)?左右固定中间自适应(三栏布局)呢?

    在前端日常布局中,会经常遇到左侧宽度固定,右侧自适应或者左右两边固定,中间部分自适应的实用场景.本文例子中将列举出两种常用的两栏布局,左侧固定右侧自适应的常用方法以及代码和五种左右固定中间自适应的常用 ...

  5. Python笔记_第四篇_高阶编程_GUI编程之Tkinter_4.布局

    1. 绝对布局: 图示: 实例: import tkinter from tkinter import ttk # 创建主窗口__编程头部 win = tkinter.Tk() # 设置标题 win. ...

  6. CSS 布局实例系列(三)如何实现一个左右宽度固定,中间自适应的三列布局——也聊聊双飞翼

    今天聊聊一个经典的布局实例: 实现一个三列布局,其中左侧和右侧的部分宽度固定,中间部分宽度随浏览器宽度的变化而自适应变化 可能很多朋友已经笑了,这玩意儿通过双飞翼布局就能轻松实现.不过,还请容我在双飞 ...

  7. CSS | 圣杯布局、双飞翼布局 | 自适应三栏布局

    圣杯布局和双飞翼布局是前端工程师需要日常掌握的重要布局方式.两者的功能相同,都是为了实现一个两侧宽度固定,中间宽度自适应的三栏布局 虽然两者的实现方法略有差异,不过都遵循了以下要点: 1.两侧宽度固定 ...

  8. 中间自适应,左右定宽的两种经典布局 ---- 圣杯布局 VS 双飞翼布局

    一.引子 最近学了些js框架,小有充实感,又深知如此节奏的前提需得基础扎实,于是回头想将原生CSS和Javascript回顾总结一番,先从CSS起,能集中它的就在基础的布局上,便查阅了相关资料,将布局 ...

  9. CSS经典布局——圣杯布局与双飞翼布局

    一.圣杯布局和双飞翼布局的目的 实现三栏布局,中间一栏最先加载和渲染 两侧内容固定,中间内容随着宽度自适应 一般用于PC网 二.圣杯布局的实现 技术要点: 设置最小宽度min-width 使用floa ...

  10. CSS_圣杯布局和双飞翼布局

    参考: 圣杯布局的来历是2006年发在a list part上的这篇文章: http://alistapart.com/article/holygrail 双飞翼布局介绍-始于淘宝UED: http: ...

随机推荐

  1. Junti单元测试

    Junit单元测试 ## 测试分类 黑盒测试,白盒测试 黑盒测试,不需要写代码,给输入值,看程序是否能够输出期望的值 白盒测试,需要写代码的,关注程序的具体执行流程 Junit使用 是白盒测试 ### ...

  2. 【转载】【Word】项目编号应用样式后出现黑框的解决方案

    本文中的宏代码来自: https://www.zhihu.com/question/38985919 Word使用项目编号后,出现黑框,如下图所示: 网上大多数解决方案在重新打开文档后,依然还是有黑框 ...

  3. ArcGIS工具 - 导出数据库结构

    为了保证数据的一致性,数据库结构的正确性在数据库建设和管理过程中显示十分重要,在各个地理信息类项目的技术规定中都对空间数据库的结构进行明确和详细的定义,有时为了方便检查或文档编辑需要将数据结构导出,为 ...

  4. Nacos配置中心 (介绍与配置)

    Nacos配置中心 当微服务部署的实例越来越多,达到数十.数百时,逐个修改微服务配置就会让人抓狂,而且很容易出错.我们需要一种统一配置管理方案,可以集中管理所有实例的配置. Nacos一方面可以将配置 ...

  5. CC1链详解

    前言:这篇文章是对CC1的总结,个人学习,如有不对请多指教.谢谢! 环境:jdk8u71以下,因为在该jdk版本以上这个漏洞已经被修复了 下载链接:https://www.oracle.com/cn/ ...

  6. idea2022.2.3安装破解

    转:https://www.quanxiaoha.com/article/idea-pojie.html 1 注意事项 如果是卸载了旧版本安装的本版本,安装完成后打不开,可能是旧版本的影响 找到:C: ...

  7. Vue08 数据代理

    1 说明 所谓"数据代理",是指 通过一个对象代理对另一个对象的属性进行读或写操作. 2 简单示例 2.1 代码 let obj = {x:100}; let obj2 = {y: ...

  8. .NET 支付宝SDK新版 AlipayEasySDK 配置文件详细说明

    config代码: using Tea; namespace Alipay.EasySDK.Kernel { /// <summary> /// 客户端配置参数模型 /// </su ...

  9. .NET Core Redis的简单使用

    1.Redis简介 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库. 2.Redis主要特点 Redis支持数据的持久化 Redis支持多种数据结构 Redi ...

  10. ChatGPT国内镜像模板,国内使用ChatGPT中文版本

    @ 目录 一.什么是ChatGPT国内镜像 二.ChatGPT国内镜像使用教程 免费ChatGPT镜像的功能: 三.ChatGPT中文版作用 四.怎么使用ChatGPT国内镜像 五.中文ChatGPT ...