为了账号安全,请及时绑定邮箱和手机立即绑定

CSS 三栏布局方法归纳

标签:
Html/CSS CSS3

中间自适应,两边固定

image

1.用margin和float实现

css:

<style>
    * {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .left {
        float: left;
        width: 100px;
        background: yellow;
    }
    .right {
        float: right;
        width: 100px;
        background: green;
    }
    .center {
        margin: 0 100px;
        background: #ccc;
    }
</style>

html

<div class="container">
    <div class="left">left</div>
    <div class="right">right</div>
    <div class="center">center</div>
</div>
2.用float,margin负值实现

css

<style>
    * {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .left, .right, .center {
        float: left;
    }
    .left {
        width: 100px;
        margin-left: -100%;
        background: yellow;
    }
    .right {
        width: 100px;
        margin-left: -100px;
        background: green;
    }
    .center {
        width: 100%;
        background: #ccc;
    }
</style>

html

<div class="container">
    <div class="center">center</div>
    <div class="left">left</div>
    <div class="right">right</div>
</div>
3.用flex实现

css

<style>
    * {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .container {
        display: flex;
    }
    .left {
        width: 100px;
        background: yellow;
    }
    .right {
        width: 100px;
        background: green;
    }
    .center {
        flex: 1;
        background: #ccc;
    }
</style>

html

<div class="container">
    <div class="left">left</div>
    <div class="center">center</div>
    <div class="right">right</div>
</div>

中间固定,两边自适应

image

1. 用margin和float实现

css

<style>
    * {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .container {
        padding: 0 100px;
    }
    .left {
        float: left;
        width: 50%;
        margin-left: -100px;
        background: yellow;
    }
    .right {
        float: right;
        width: 50%;
        margin-right: -100px;
        background: green;
    }
    .center {
        float: left;
        width: 200px;
        background: #ccc;
    }
</style>

html

<div class="container">
    <div class="left">left</div>
    <div class="center">center</div>
    <div class="right">right</div>
</div>
2. 用flex实现

css

<style>
    * {
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .container {
        display: flex;
    }
    .left {
        flex: 1;
        background: yellow;
    }
    .right {
        flex: 1;
        background: green;
    }
    .center {
        width: 200px;
        background: #ccc;
    }
</style>

html

<div class="container">
    <div class="left">left</div>
    <div class="center">center</div>
    <div class="right">right</div>
</div>
点击查看更多内容
2人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
Web前端工程师
手记
粉丝
9
获赞与收藏
58

关注作者,订阅最新文章

阅读免费教程

感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消