博主信息
博文 32
粉丝 1
评论 5
访问量 36170
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
元素浮动与三列布局_2019/9/4
零度 的博客
原创
948人浏览过

一:消除子元素浮动造成父元素高度折叠的影响

实例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <style>
    .box1 {
        width: 300px;
        border: 5px dashed red;
    }
    
    .box2 {
        width: inherit;
        height: 300px;
        background-color: blue;
    }
    
    .box2 {
        float: left;
    }
    
    .box1 {
        overflow: hidden;
    }
</style>
</head>


<body>
    <div class="box1">
        <div class="box2">子元素块</div>
    </div>
</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


二、绝对定位实现, 浮动定位实现三列布局

1.绝对定位实现

实例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <style>
        .main {
            height: 800px;
            position: relative;
        }
        
        .left {
            height: 800px;
            width: 200px;
            background-color: yellow;
            position: absolute;
            left: 0;
            top: 0;
        }
        
        .content {
            height: 800px;
            width: 800px;
            background-color: lightcoral;
            position: absolute;
            left: 200px;
            top: 0;
        }
        
        .right {
            height: 800px;
            width: 200px;
            background-color: lightgreen;
            position: absolute;
            left: 1000px;
            top: 0;
        }
    </style>
    <title>绝对定位演示</title>
</head>


<body>
    <div class="main">
        <div class="left"></div>
        <div class="content"></div>
        <div class="right"></div>
    </div>
</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

2.浮动定位实现

实例

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>浮动定位实现</title>
</head>
<style>
    .content {
        height: 700px;
        width: 600px;
        background-color: lightpink;
        float: left;
    }
    
    .left {
        height: 700px;
        width: 300px;
        background-color: blue;
        float: left;
    }
    
    .right {
        height: 700px;
        width: 300px;
        background-color: green;
        float: left;
    }
</style>

<body>
    <div class="left"></div>
    <div class="content"></div>

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

</body>

</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


总结

消除子元素浮动造成父元素高度折叠的影响有好几种:

  1. 将父级元素的浮动与子元素的浮动同样

  2. 将父元素的高度与浮动的子元素同样

  3. 添加一个清除浮动div clear属性标签消除

  4. 父级元素css代码中添加个overflow: hidden;消除

    以上方法都可以用,但第4种各种浏览器兼容,适用更规范

绝对定位与浮动定位都可以实现三列布局,视写代码的时候想用哪个就哪个看需求用



批改状态:合格

老师批语:实现布局的方案很多, 很难说哪一种方法最好, 要根据你掌握哪一种就用哪一种好了
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
1条评论
零度 2019-09-06 12:16:37
style标签放错了 手机端没法修改。。
1楼
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学