圣杯+双飞翼 自适应布局

本文介绍网页布局中的两种经典方法:圣杯布局与双飞翼布局。这两种方法均可实现左右固定宽度、中间自适应宽度的效果。圣杯布局通过特殊CSS属性实现三栏布局,而双飞翼布局则在此基础上添加了额外的内层div来进一步调整内容位置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、圣杯布局

左右固定200px,中间自适应

  • 左右两个div左右浮动,中间div写到前面
  • 通过margin-left:-100%;来调整到同一行
  • 父容器添加左右padding,左右div相对定位
详细代码如下:
<!doctype html>
<html>
    <head>
        <meta charset="utf-8"/>
        <title>圣杯布局</title>
        <style>        
*{
    margin:0;
}
html{
    height:100%;
}
.box{
    width:800px;
    height:300px;
    border:1px solid black;
    margin:0 auto;
    background:#0ff;
    padding:0px 200px;
}
.left{
    width:200px;
    height:300px;
    background:#f00;
    float:left;
    margin-left:-100%;
    position:relative;
    left:-200px;
}
.center{
    width:100%;
    height:300px;
    background:#0f0;
    float:left;    
}
.right{
    width:200px;
    height:300px;
    background:blue;
    float:right;    
    margin-left:-100%;
    position:relative;
    right:-200px;    
}
        </style>
    </head>
    <body>
        <div class="box">
            <div class="center"></div>
            <div class="left"></div>            
            <div class="right"></div>
        </div>
    </body>
</html>
运行结果如下图:

图片描述

二、双飞翼布局

左右固定200px,中间自适应

  • 左右两个div左右浮动,中间div写到前面
  • 通过margin-left:-100%;来调整到同一行
  • 中间div添加一个子节点div,设置margin调整位置
具体代码如下:
<!doctype html>
<html>
    <head>
        <meta charset="utf-8"/>
        <title>双飞翼布局</title>
        <style>
        *{
    margin:0;
}
html{
    height:100%;
}
.box{
    width:1000px;
    height:300px;
    border:1px solid black;
    margin:0 auto;
    background:#0ff;    
}
.left{
    width:200px;
    height:300px;
    background:#f00;
    float:left;
    margin-left:-100%;    
}
.center{
    width:100%;
    height:300px;
    background:#0f0;
    float:left;    
}
.right{
    width:200px;
    height:300px;
    background:blue;
    float:right;    
    margin-left:-100%;    
}
.conter{
    margin:0 200px;
}
        </style>
    </head>
    <body>
        <div class="box">
            <div class="center">
                <div class="conter">
                    双飞翼布局
                </div>
            </div>
            <div class="left"></div>            
            <div class="right"></div>
        </div>    
    </body>
</html>
运行结果如下图:

图片描述

加关注 持续更新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值