【我的前端】CSS网页布局:实现三栏布局的方法

简介: 需求:实现左右两栏固定宽度,中间一栏自适应宽度。

实现三栏布局的3种方法

需求:实现左右两栏固定宽度,中间一栏自适应宽度。

1、浮动float+cac()

核心思想:先使用浮动将三栏水平排列,然后对中间栏使用 calc() 函数来计算去除左右两栏固定宽度后剩余的宽度。

HTML结构:

<div class="container">
  <div class="left">left</div>
  <div class="middle">middle</div>
  <div class="right">right</div>
</div>

css样式:

div {
    height: 100px;
}
.left {
    float: left;
    width: 200px;
    background-color: red;
}
.middle {
    float: left;
    width: calc(100% - 400%);
    background-color: green;
}
.right{
    float: left;
    width: 200px;
    background-color: blue;
}

这是浏览器缩放100%的效果图:


只有到500%的时候才能显示中间栏来:


2、浮动float+margin负值

核心思想:利用浮动的方式,为左右两栏设置对应方向的浮动。中间设置左右两个方向的 margin 负值,注意这种方式,中间一栏必须放到最后。

HTML结构:

<div class="container">
  <div class="left">left</div>
  <div class="right">right</div>
  <div class="middle">middle</div>
</div>

css样式:

div {
    height: 100px;
}
.left {
    float: left;
    width: 200px;
    background-color: red;
}
.right{
    float: right;
    width: 200px;
    background-color: blue;
}
.middle {
    margin-left: 200px;
    margin-right: 200px;
    background-color: green;

再次优化后:


怎么样,是不是好多了?别急,还能再优化呢!

3、定位position

核心思想:利用 绝对定位 的方式。

好处:这种实现方式的三栏 HTML 结构可以任意摆放,不用考虑先后顺序。

HTML结构:

<div class="container">
  <div class="left">left</div>
  <div class="right">right</div>
  <div class="middle">middle</div>
</div>

css样式:

.container {
    position: relative;
}
.left {
    position: absolute;
    left: 0;
    width: 200px;
    background-color: red;
}
.right{
    position: absolute;
    right: 0;
    width: 200px;
    background-color: blue;
}
.middle {
    position: absolute;
    left: 200px;
    right: 200px;
    background-color: green;
}

这是最终100%的效果图:


500%的时候就找不到中间栏了:



缩放到25%的时候中间栏就长得不像话了:



其实还有很多布局方法,例如:网格布局、圣杯布局等等,我就不再列举了。另外,不知道朋友们发现没有,像这样的三栏布局和响应式设计似乎有着异曲同工之妙呀!

相关文章
|
3月前
|
前端开发 JavaScript API
(前端3D模型开发)网页三维CAD中加载和保存STEP模型
本文介绍了如何使用`mxcad3d`库在网页上实现STEP格式三维模型的导入与导出。首先,通过官方教程搭建基本项目环境,了解核心对象如MxCAD3DObject、Mx3dDbDocument等的使用方法。接着,编写了加载和保存STEP模型的具体代码,包括HTML界面设计和TypeScript逻辑实现。最后,通过运行项目验证功能,展示了从模型加载到保存的全过程。此外,`mxcad3d`还支持多种其他格式的三维模型文件操作。
|
2月前
|
前端开发 JavaScript 开发者
前端 CSS 优化:提升页面美学与性能
前端CSS优化旨在提升页面美学与性能。通过简化选择器(如避免复杂后代选择器、减少通用选择器使用)、合并样式表、合理组织媒体查询,可减少浏览器计算成本和HTTP请求。利用硬件加速和优化动画帧率,确保动画流畅。定期清理冗余代码并使用缩写属性,进一步精简代码。这些策略不仅加快页面加载和渲染速度,还提升了视觉效果,为用户带来更优质的浏览体验。
|
4月前
|
JavaScript 前端开发 程序员
前端原生Js批量修改页面元素属性的2个方法
原生 Js 的 getElementsByClassName 和 querySelectorAll 都能获取批量的页面元素,但是它们之间有些细微的差别,稍不注意,就很容易弄错!
|
1月前
|
前端开发
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
51 1
【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
|
2月前
|
前端开发 开发者 UED
《前端技术基础》第02章 CSS基础【合集】
层叠样式表(Cascading Style Sheets,简称CSS)是一种用于描述网页视觉表现的语言。该语言与HTML协同工作,其中HTML负责构建网页的结构,而CSS则负责定义网页的外观和格式。CSS通过一系列规则来实现样式的应用,这些规则由选择器(Selectors)和声明块(Declaration Blocks)构成。选择器的作用是明确指出哪些HTML元素将受到特定样式规则的影响,而声明块则包含了具体的样式声明,这些声明定义了元素的视觉属性和相应的值。
86 1
|
4月前
|
XML 前端开发 JavaScript
前端大神揭秘:如何让你的网页秒变炫酷,让用户欲罢不能的5大绝招!
前端开发不仅是技术活,更是艺术创作。本文揭秘五大前端开发技巧,包括合理运用CSS动画、SVG图形、现代JavaScript框架、优化网页性能及注重细节设计,助你打造炫酷网页,提升用户体验。
152 30
|
4月前
|
缓存 JavaScript 前端开发
JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用
本文深入讲解了 JavaScript 与 DOM 交互的基础及进阶技巧,涵盖 DOM 获取、修改、创建、删除元素的方法,事件处理,性能优化及与其他前端技术的结合,助你构建动态交互的网页应用。
119 5
|
4月前
|
监控 前端开发 jenkins
Jenkins 在前端项目持续部署中的应用,包括其原理、流程以及具体的实现方法
本文深入探讨了Jenkins在前端项目持续部署中的应用,涵盖其基本原理、流程及具体实现方法。首先介绍了Jenkins的基本概念及其在自动化任务中的作用,随后详细解析了从前端代码提交到生产环境部署的全过程,包括构建、测试、部署等关键步骤。最后,强调了持续部署中的代码质量控制、环境一致性、监控预警及安全管理等注意事项,旨在帮助开发者高效、安全地实施持续部署。
112 5
|
4月前
|
存储 编解码 前端开发
惊!前端新手也能秒懂的高级技巧,轻松提升网页颜值与性能!
本文针对前端新手,介绍了三个简单易学的高级技巧,帮助提升网页的颜值和性能。包括使用CSS框架快速美化网页、优化图片资源加快加载速度,以及利用ARIA属性和媒体查询提高网页的可访问性和响应性。示例代码清晰,适合初学者上手实践。
74 3
|
4月前
|
存储 前端开发 搜索推荐
(前端直接编辑CAD)网页CAD二次开发中线型表的使用方法
在DWG数据库中,线型样式存储在线型样式表 `McDbLinetypeTable` 中,每个线型表记录对象 `McDbLinetypeTableRecord` 对应一种线型样式。本文介绍了如何获取、添加、遍历、删除和修改线型样式,并提供了绘制不同线型的示例代码,包括虚线、点划线和带文字的线型。通过在线示例demo,用户可以实践修改CAD图纸中的实体线型及其样式。

热门文章

最新文章