两栏布局的实现方式

简介: 两栏布局的实现方式

  1. 浮动布局:将侧边栏浮动到左侧或右侧,使主要内容区域占据剩余空间。主要内容区域使用 margin 或 padding 来避免与侧边栏重叠。
  2. 绝对定位布局:将侧边栏使用绝对定位来固定在左侧或右侧,再将主要内容区域使用 margin 或 padding 来避免与侧边栏重叠。
  3. 弹性盒模型布局:将容器设置为 flex 布局,通过设置侧边栏宽度和主要内容区域宽度的比例,来实现两栏布局。
  4. 宫格布局:使用 CSS 网格布局来将容器划分为多个单元格,然后将侧边栏放置在某一个单元格中,将主要内容区域放置在其它单元格中。
  5. table布局
  6. margin负值

html部分:

<div class="wrap">
        <div class="left">left</div>
        <div class="right">right</div>
 </div>

css部分:

【方法一】:浮动布局

.left {
        float: left;
        width: 200px;
        background-color: pink;
        height: 50px
    }
    .right {
        overflow: hidden;
        height: 50px;
        background-color: blue;
    }

注意点:

当overflow的取值不是默认值的时候,就会创建BFC(块级格式化上下文,让元素成为隔离独立的容器,且容器内的子元素不会影响到外面的布局),从而起到一些独特的作用。

以下元素会在其内部创建BFC区域:

根元素:body

绝对定位:position 为absolute或者fixed

浮动:float 除 none 以外的值

overflow不等于visible的块盒

BFC的作用:

消除浮动,自动高度会计算浮动元素。

它的边框盒不会与浮动元素重叠。=>上述例子正是说明此作用

不会和它的子元素进行外边距合并。

【方法二】:绝对定位

.wrap {
    position: relative;
}
.left {
        width: 200px;
        height: 50px;
        background-color: pink;
}
.right {
        position: absolute;
        top: 0;
        left: 200px;
        height: 50px;
        background-color: blue;
}

注意点:

设置了position为absolute和fixed时元素会脱离正常文档流,不在占据空间

方法三:弹性盒子

.wrap {
    display: flex;
}
.left {
        width: 200px;
        background-color: pink;
        height: 50px;
}
.right {
        flex: 1;
        background-color: blue;
        height: 50px;
}

 【方法四】:网格布局

.wrap {
         display: grid;
         grid-template-columns: 10px auto;
}

方法五:table布局

.wrap {
        width: 100%;
        display: table;
    }
    .left {
        background-color: #0f0;
        width: 200px;
    }
    .right {
        width: 100%;
        display: table-cell;
        background-color: #f00;
    }

方法六:margin负值

.wrap {
        width: 100%;
        padding: 10px
    }
    .left {
        width: 100px;
        height: 400px;
        background-color: blue;
    }
    .right {
        width: 100%;
        height: 400px;
        margin: -400px 0 0 100px;
        background-color: green;
    }


相关文章
|
1月前
QML (控件位置布局)之(Anchors)锚布局
QML (控件位置布局)之(Anchors)锚布局
47 2
|
3月前
|
前端开发 容器
如何实现一个两栏布局,右侧自适应?三栏布局中间自适应?
要实现一个两栏布局,右侧自适应的效果,可以使用 CSS 的 Flexbox 或 Grid 布局来实现。以下是使用 Flexbox 实现的示例:
34 1
|
6月前
|
容器
13EasyUI 布局- 为网页创建边框布局
13EasyUI 布局- 为网页创建边框布局
17 0
|
6月前
|
UED 容器
如何实现侧边两栏宽度固定,中间栏宽度自适应的布局?——双飞翼布局、圣杯(Holy Grails)布局
如何实现侧边两栏宽度固定,中间栏宽度自适应的布局?——双飞翼布局、圣杯(Holy Grails)布局
45 0
|
6月前
|
Web App开发 前端开发 安全
flex布局轻而易举实现页面布局;超详细解析轻松掌握
flex布局轻而易举实现页面布局;超详细解析轻松掌握
35 0
|
8月前
|
前端开发 数据可视化 容器
CSS 两栏布局和三栏布局的实现
CSS 两栏布局和三栏布局的实现
108 0
|
8月前
|
前端开发 搜索推荐 UED
深入理解CSS选择器:选择正确的方式掌控样式与布局
在网页开发中,CSS选择器是塑造页面外观和交互的关键工具。然而,选择器的威力和权重的影响常常在样式冲突时变得复杂。本篇博客将带您深入了解不同类型的CSS选择器,探讨它们的用途和如何合理运用。我们还将解析CSS权重的计算方法,从内联样式到类、ID和伪类选择器,一一剖析权重如何影响样式的优先级。通过这篇博客,您将获得精确的选择器技能,轻松解决样式冲突,确保您的页面呈现出预期的外观和布局。让我们一起揭开CSS选择器和权重的神秘面纱,助力您的网页设计和开发之旅。
300 2
|
10月前
|
编解码 前端开发 Android开发
移动布局基础(流式布局)
移动布局基础(流式布局)
101 0
|
前端开发 容器
移动端布局——flex布局下的居中对齐方式
Flex是Flexible Box的缩写,意为”弹性布局”,用来为盒状模型提供最大的灵活性。任何一个容器都可以指定为Flex布局。
257 0
移动端布局——flex布局下的居中对齐方式
|
前端开发
css毛玻璃效果—附:子盒子背景跟随父盒子背景
css毛玻璃效果—附:子盒子背景跟随父盒子背景
css毛玻璃效果—附:子盒子背景跟随父盒子背景