CSS两列自适应布局

两列布局,一边固定,一边自适应,很常见,可不见得都能写好,就像我。

在一通搜索后,总结了几种方法。

1、CSS3 Flex-Box

其实我最早知道的是这种方法,之前也记录过。

弹性方框模型 (Flexible Box Model)笔记

2、来自div+css自适应两列布局,一列定宽,一列自适应

代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
.main,.sitebar {
    height: 300px;
    font: bolder 20px/300px ‘微软雅黑‘;
    color: #fff;
    text-align: center;
}
.main {
    width: 100%;
    float: left;
}
.main .content {
    margin-left: 200px;
    background-color: red;
}
.sitebar {
    width: 200px;
    float: left;
    margin-left: -100%;
    background-color: green;
}
</style>
</head>
<body>
<div class="main">
    <div class="content">右侧主体自适应区块</div>
</div>
<div class="sitebar">左侧定宽200px区块</div>
</body>
</html>

效果:

3、来自经典DIV+CSS案例--两列高度自适应

代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"/>
<title>两列高度自适应</title>
<style type="text/css">
    * {
        margin:0;
        padding:0;
    }
    #main {
        overflow:hidden;
        text-align: center;
        height: 300px;
    }
    .sidebar {
        float:left;
        width:150px;
        background:#ff0000;
    }
    .content {
        background:#333333;
        overflow:hidden;
        _float:left;/*兼容IE6*/}
    .row {
        margin-bottom:-10000px;
        padding-bottom:10000px;/*内外补丁是关键*/
    }
</style>
</head>
<body>

<div id="main">

    <div class="sidebar row">
        左侧150px
    </div>

    <div class="content row">
        右侧自适应
        <span style="float:right; font-size:0; position:relative; ">&nbsp;</span> <!--为了万恶的ie6-->
    </div>

</div>

</body>
</html>

效果:

时间: 2024-10-16 03:14:01

CSS两列自适应布局的相关文章

css 两列自适应布局的4种思路

前面的话 前面已经介绍过css 两列布局中单列定宽单列自适应布局的6种思路的两列布局,而两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式.本文将从float.table.flex和grid来介绍两列自适应布局的4种思路 float [思路一]float 在单列定宽单列自适应的两列布局中,经常用float和负margin配合实现布局效果.但由于margin取值只能是固定值,所以在两列都是自适应的布局中就不再适用.而float和overflow配合可实现两列自适应效果.使用overfl

布局一 两列自适应布局

<!DOCTYPE html><html>     <head>          <meta charset="UTF-8">          <title>两列自适应布局</title>          <style type="text/css"> .out{ width: 90%; height: 500px; margin: 0 auto; background: ye

css自适应布局(两列自适应布局+三列左右固定中间自适应+三列中间固定左右自适应)

1.两列自适应 <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>demo</title> <style type="text/css" media="screen"> #left{float: left;background: #ccc;height: 40

两列自适应布局

目的: 想要在网页中实现自适应两列布局,即左边一列是固定宽度的,右边一列的宽度等于屏幕宽减去左边的宽度(或相反). 分析: 需要满足三个要求: ①两个盒子在同一行 ②右边的盒子需要占满剩下的空间 ③两个盒子不能重叠 这三个条件又分别有很多种实现方法(不考虑绝对定位): 组合起来,会有很多种实现方式. 方法: <div class="left"></div> <div class="main"></div> 1.floa

css两列布局,一边固定宽度,另一边自适应

<!DOCTYPE HTML><HTML>    <head>                <meta charset="utf-8" />        <title>css两列布局,一边固定宽度,另一边自适应</title>    </head>    <style>        a, body, center, cite, code, dd, del, div, dl, dt, e

使用em为单位制作两列弹性布局

一.DIV布局按照定位的方法分为:浮动方法(float),坐标定位方法(position),还有就是两者相结合的方法. 二.DIV布局按照定义单位的不同可分为:固定宽度布局.流体布局.弹性布局和混合布局. 固定宽度布局是将宽度用像素单位定义,它的宽度总保持不变,也被成为“冰布局”. 它的缺点是由于宽度固定,无论浏览器窗口尺寸有多大,它的尺寸也不变,无法充分利用空间. 当浏览器窗口变小时,会出现水平滚动条.这些缺点可以用其他两种布局方法解决. 流体布局的单位是用百分比控制的,不是像素.这使流体布局

css 两列布局中单列定宽单列自适应布局的6种思路

前面的话 说起自适应布局方式,单列定宽单列自适应布局是最基本的布局形式.本文将从float.inline-block.table.absolute.flex和grid这六种思路来详细说明如何巧妙地实现布局 float [思路一]float 说起两列布局,最常见的就是使用float来实现.float浮动布局的缺点是浮动后会造成文本环绕等效果,以及需要及时清除浮动.如果各浮动元素的高度不同时,可能会出犬牙交错的效果 [1]float + margin 将定宽的一列使用float,而自适应的一列使用计

CSS两列布局

在布局中,我们常常需要出现两列的情况,其中左边一列固定宽度,右边一列随着浏览器宽度变化而变化.如何实现呢? 传统的方法是利用float将左部分浮动起来,再通过margin将右部分右移,得到所需效果,代码如下: <!--两列布局,其中左侧固定,右侧自适应--> <div class="left background-color-red height-60 width-300"></div> <div class=" background

div+css两列布局与三列布局

一.两列布局: 1.左边定宽,右边自适应. 方法一:采用position:absollute;并设置margin-left的值. 例: #left{ position:absolute; width:300px; top:0px; left:0px; background:#F00; } #right{ background:#0FC; margin-left:300px; } <div id="left">左边定宽</div> <div id="