css三栏布局实现6种方法总结

2023-12-27 05:32

本文主要是介绍css三栏布局实现6种方法总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

三栏布局介绍:左边固定300px,右边固定300px,中间自适应,下面通过6种方法来实现该布局,欢迎补充~~~~

1. flex方式,实现简单,支持ie10+:

css代码:

.content-flex {display: flex;text-align: center;line-height: 200px;font-size: 20px;height: 200px;width: 100%;}.left-flex {width: 300px;background-color: bisque;}.right-flex {width: 300px;background-color: aquamarine;}.center-flex {flex: 1;background-color: brown;}

html代码:

<h2>1.flex方式</h2><div class="content-flex"><div class="left-flex">左边宽300</div><div class="center-flex">中间自适应</div><div class="right-flex">右边宽300</div></div>
效果图:


2. 浮动方式,会被clear:both清除浮动,兼容性好,注意,中间内容的div需放在最后

css代码:

 .content-flt {/* text-align: center; */line-height: 200px;font-size: 20px;height: 200px;width: 100%;}.left-flt {float: left;width: 300px;background-color: bisque;}.right-flt {float: right;width: 300px;background-color: aquamarine;}.center-flt {background-color: brown;}

html代码:

<h2>2.浮动方式</h2><div class="content-flt"><div class="left-flt">左边宽300</div><div class="right-flt">右边宽300</div><div class="center-flt">中间自适应</div></div>

3. margin负值方式,这个方案给我的感觉是,很累赘,也很不直观,此处中间div必须放在最上面,不然margin负值也负不上来啊-- 。:

同样的,css代码:

.content-mag {/* text-align: center; */line-height: 200px;font-size: 20px;width: 100%;height: 200px;}.left-mag {float: left;width: 300px;margin-left: -100%;background-color: bisque;}.right-mag {float: left;width: 300px;margin-left: -300px;background-color: aquamarine;}.center-mag {float: left;width: 100%;}.center-mag .center-body {margin: 0 300px;background-color: brown;}
html代码:
<h2>3.margin负值方式</h2><div class="content-mag"><div class="center-mag"><div class="center-body">中间自适应</div></div><div class="left-mag">左边宽300</div><div class="right-mag">右边宽300</div></div>

4. 定位方式,脱离了文档流,会影响下面的文档流。通过设置left和right实现自适应:

css代码:

.content-pos {position: relative;text-align: center;line-height: 200px;font-size: 20px;height: 200px;width: 100%;clear: both;}.left-pos {float: left;width: 300px;background-color: bisque;}.right-pos {float: right;width: 300px;background-color: aquamarine;}.center-pos {position: absolute;left: 300px;right: 300px;background-color: brown;}

html代码:

<h2 style=" clear: both;">4.定位方式</h2><div class="content-pos"><div class="left-pos">左边宽300</div><div class="right-pos">右边宽300</div><div class="center-pos">中间自适应</div></div>

5. table方式,父div设成display: table,子div设成displat: table-cell,table-cell平时用的不多,也就那这个例子做熟悉了

css代码:

.content-tab {display: table;text-align: center;line-height: 200px;font-size: 20px;height: 200px;width: 100%;}.left-tab {display: table-cell;width: 300px;background-color: bisque;}.right-tab {display: table-cell;width: 300px;background-color: aquamarine;}.center-tab {display: table-cell;background-color: brown;}

html代码:

<h2>5.table方式</h2><div class="content-tab"><div class="left-tab">左边宽300</div><div class="center-tab">中间自适应</div><div class="right-tab">右边宽300</div></div>

6. 网格方式

css代码:

.content-grid {display: grid;grid-template-rows: 200px;grid-template-columns: 300px auto 300px;text-align: center;line-height: 200px;font-size: 20px;width: 100%;}.left-grid {background-color: bisque;}.right-grid {background-color: aquamarine;}.center-grid {background-color: brown;}

html代码:

<h2>6.网格方式</h2><div class="content-grid"><div class="left-grid">左边宽300</div><div class="center-grid">中间自适应</div><div class="right-grid">右边宽300</div></div>




这篇关于css三栏布局实现6种方法总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/542015

相关文章

Java中流式并行操作parallelStream的原理和使用方法

《Java中流式并行操作parallelStream的原理和使用方法》本文详细介绍了Java中的并行流(parallelStream)的原理、正确使用方法以及在实际业务中的应用案例,并指出在使用并行流... 目录Java中流式并行操作parallelStream0. 问题的产生1. 什么是parallelS

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

C++中unordered_set哈希集合的实现

《C++中unordered_set哈希集合的实现》std::unordered_set是C++标准库中的无序关联容器,基于哈希表实现,具有元素唯一性和无序性特点,本文就来详细的介绍一下unorder... 目录一、概述二、头文件与命名空间三、常用方法与示例1. 构造与析构2. 迭代器与遍历3. 容量相关4

C++中悬垂引用(Dangling Reference) 的实现

《C++中悬垂引用(DanglingReference)的实现》C++中的悬垂引用指引用绑定的对象被销毁后引用仍存在的情况,会导致访问无效内存,下面就来详细的介绍一下产生的原因以及如何避免,感兴趣... 目录悬垂引用的产生原因1. 引用绑定到局部变量,变量超出作用域后销毁2. 引用绑定到动态分配的对象,对象

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

Java HashMap的底层实现原理深度解析

《JavaHashMap的底层实现原理深度解析》HashMap基于数组+链表+红黑树结构,通过哈希算法和扩容机制优化性能,负载因子与树化阈值平衡效率,是Java开发必备的高效数据结构,本文给大家介绍... 目录一、概述:HashMap的宏观结构二、核心数据结构解析1. 数组(桶数组)2. 链表节点(Node

Java AOP面向切面编程的概念和实现方式

《JavaAOP面向切面编程的概念和实现方式》AOP是面向切面编程,通过动态代理将横切关注点(如日志、事务)与核心业务逻辑分离,提升代码复用性和可维护性,本文给大家介绍JavaAOP面向切面编程的概... 目录一、AOP 是什么?二、AOP 的核心概念与实现方式核心概念实现方式三、Spring AOP 的关

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Python版本信息获取方法详解与实战

《Python版本信息获取方法详解与实战》在Python开发中,获取Python版本号是调试、兼容性检查和版本控制的重要基础操作,本文详细介绍了如何使用sys和platform模块获取Python的主... 目录1. python版本号获取基础2. 使用sys模块获取版本信息2.1 sys模块概述2.1.1

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多