CSS 常见布局

简介: CSS 常见布局

左列固定宽度,右列自适应

使用flex布局实现

.container{
    display: flex;
}
.l{
    width: 100px;
}
.r{
    flex: 1;
}

Demo

使用float以及margin实现

.l{
    width: 100px;
    float: left;
}
.r{
    margin-left: 100px;
}

Demo

使用float以及overflow实现

.l{
    width: 100px;
    float: left;
}
.r{
    overflow: hidden;
}

通过设置overflow创建了一个BFC,可以形成一个独立的容器,浮动盒区域不叠加在BFC上,容器内子元素不会影响到外面的元素,反之亦然。设置overflow:auto;等都能达到同样效果,只需要形成一个BFC。

Demo

使用table实现

.container{
    display: table;
    table-layout: fixed;
    width: 100%;
}
.l{
    width: 100px;
}
.r, .l{
    display: table-cell;
}

Demo

右列固定宽度,左列自适应

使用flex布局实现

.container{
    display: flex;
}
.l{
    flex: 1;
}
.r{
    width: 100px;
}

Demo

使用float以及margin实现

.l{
    float: left;
    margin-right: -100px;
    width: 100%;
}
.r{
    float: right;
    width: 100px;
}

Demo

使用table实现

.container{
    display: table;
    table-layout: fixed;
    width: 100%;
}
.r{
    width: 100px;
}
.l, .r{
    display: table-cell;
}

Demo

两侧固定宽度,中间自适应

使用flex布局

.container{
    display: flex;
}
.l{
    width: 100px;
}
.c{
    flex: 1;
}
.r{
    width: 100px;
}

Demo

使用float以及margin布局

 .container{
            
}
.l{
    float: left;
    width: 100px;
}
.c{
    float: left;
    margin-right: -200px;
    width: 100%;
}
.r{
    float: left;
    width: 100px;
}

Demo

使用table布局

.container{
    display: table;
    table-layout: fixed;
    width: 100%;
}
.l{
    width: 100px;
}
.r{
    width: 100px;
}
.l, .r, .c{
    display: table-cell;
}

Demo

左列不定宽,右列自适应

利用flex实现

.container{
    display: flex;
}
.r{
    flex: 1;
}

Demo

利用table实现

.container{
    display: table;
}
.l{
    background-color: red;
    width: 1%;
}
.r{
    background-color: gainsboro;
}
.l, .r{
    display: table-cell;
}

Demo

利用float实现

左侧元素浮动,右侧元素通过overflow形成BFC。

.l{
    float: left;
    background-color: blanchedalmond;
}
.r{
    overflow: hidden;
    background-color: red;
}

Demo

多列等分布局

利用flex实现

.container{
    display: flex;
}
.ele{
    flex: 1;
}

Demo

利用float实现

.ele{
    float: left;
    width: 25%;
}

Demo

利用table实现

.container{
    display: table;
    width: 100%;
    table-layout: fixed;
}
.ele{
    display: table-cell;
}

Demo

目录
相关文章
|
11天前
|
前端开发 开发者 UED
解锁网页布局的秘密武器:探索 CSS Grid 布局的神奇魔力
解锁网页布局的秘密武器:探索 CSS Grid 布局的神奇魔力
21 3
|
11天前
|
前端开发 容器
《CSS 简易速速上手小册》第2章:CSS 布局与定位(2024 最新版)
《CSS 简易速速上手小册》第2章:CSS 布局与定位(2024 最新版)
24 2
|
11天前
|
UED 开发者 容器
【专栏】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计
【4月更文挑战第27天】Flexbox是CSS3的全新布局模式,提供灵活响应式的页面设计。其特点包括灵活性、响应式和易理解,通过主轴和交叉轴控制元素排列对齐。核心概念有容器和项目,常用于导航栏、卡片布局、响应式设计、表格和表单布局。关键属性如flex-direction定义主轴方向,justify-content和align-items控制对齐,flex属性调整项目伸缩,order改变排序。在实践中,要关注响应式、代码维护和浏览器兼容性,以优化布局和用户体验。
|
2天前
|
前端开发
尚硅谷html5+css3(3)布局
尚硅谷html5+css3(3)布局
|
2天前
|
小程序 前端开发 JavaScript
使用CSS的媒体查询功能在小程序中实现自适应布局
使用CSS的媒体查询功能在小程序中实现自适应布局
|
5天前
|
前端开发 容器
前端 CSS 经典:grid 栅格布局(下)
前端 CSS 经典:grid 栅格布局(下)
15 0
|
5天前
|
前端开发 容器
前端 CSS 经典:grid 栅格布局(上)
前端 CSS 经典:grid 栅格布局(上)
14 0
|
8天前
|
前端开发 容器
前端 css 经典:grid 栅格布局
前端 css 经典:grid 栅格布局
14 1
|
9天前
|
前端开发 容器
CSS 弹性布局,大厂意外流出
CSS 弹性布局,大厂意外流出
|
11天前
|
前端开发 UED
【专栏:HTML与CSS实战项目篇】创建一个具有复杂布局的电商详情页
【4月更文挑战第30天】构建复杂布局的电商详情页涉及页面结构规划、样式设计和交互效果实现。首先规划顶部导航栏、商品图片展示区、商品信息区、用户评价区和相关商品推荐区。在样式设计上,注重色彩搭配、字体选择、布局与间距及图片处理。交互效果包括图片放大、添加到购物车按钮、滚动监听和评论互动,以提升用户体验。实际开发中需考虑跨设备兼容性和用户体验优化。