鱼C论坛

 找回密码
 立即注册
查看: 3423|回复: 18

[庖丁解牛] 0 0 5 0 - 三列自适应布局 - 【终极版三叉戟】

[复制链接]
发表于 2017-2-16 11:38:33 | 显示全部楼层 |阅读模式
购买主题 已有 10 人购买  本主题需向作者支付 2 鱼币 才能浏览

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-5-3 16:04:17 | 显示全部楼层
琢磨了许久
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.         <meta charset="UTF-8">
  5.         <title>三列中列自适应布局</title>
  6.         <style type="text/css">
  7.                 .col{
  8.                         float: left;
  9.                         height: 600px;
  10.                         color: #FF44AA;
  11.                         font-family: sans-serif;
  12.                         text-align: center;
  13.                 }
  14.                 .col h1{
  15.                         margin-top: 50px;
  16.                 }
  17.                 .col p{
  18.                         font-size: 20px;
  19.                         margin-top: 50px;
  20.                 }
  21.                 .col img{
  22.                        
  23.                 }
  24.                 #page{
  25.                         padding-left: 400px;
  26.                         padding-right: 400px;
  27.                 }
  28.                 #main{
  29.                         background: #6F6;
  30.                         width: 100%;
  31.                 }
  32.                 #left{
  33.                         background: #9F9;
  34.                         width: 400px;
  35.                         margin-left: -100%;
  36.                         position: relative;
  37.                         right:400px;
  38.                 }
  39.                 #right{
  40.                         background: #3F3;
  41.                         width: 400px;
  42.                         margin-right: -400px;
  43.                 }
  44.         </style>
  45. </head>
  46. <body>
  47. <div id="page">
  48.        
  49.         <div id="main" class="col">
  50.                 <h1>白居易《牡丹》</h1>
  51.                 <img src="p01.jpg">
  52.                 <p>绝代只西子,众芳惟牡丹。</p>
  53.         </div>
  54.         <div id="left" class="col">
  55.                 <h1>王安石《梅》</h1>
  56.                 <img src="p02.jpg">
  57.                 <p>墙角数枝梅,凌寒独自开。</p>
  58.         </div>
  59.         <div id="right" class="col">
  60.                 <h1>张学良《咏兰诗》</h1>
  61.                 <img src="p03.jpg">
  62.                 <p>花中真君子,风姿寄高雅</p>
  63.         </div>
  64. </div>
  65. </body>
  66. </html>
复制代码
0040三列中列自适应布局.png

点评

我很赞同!: 5.0
我很赞同!: 5
文字布局有点尴尬  发表于 2017-5-3 21:41
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-27 03:40:58 | 显示全部楼层
交作业!
050.jpg

点评

我很赞同!: 5.0
我很赞同!: 5
  发表于 2017-7-27 06:22

评分

参与人数 1鱼币 +5 收起 理由
不二如是 + 5 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-3-30 21:05:24 | 显示全部楼层
求助,用webstorm里边打开浏览器显示404错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-30 14:23:30 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-8-20 10:08:39 | 显示全部楼层
正在做professor给的第一个project,突然想到一个问题,这种三列自适应布局,是不是也可以使用上一讲所用的方法,将left和right设置为position:absolute来实现啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-6-23 09:59:50 | 显示全部楼层
交作业,希望不要太尴尬
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>Title</title>
  6.     <style type="text/css">

  7.        #page{
  8.             padding-left:400px;
  9.             padding-right:400px;
  10.         }
  11.        #page p{
  12.            font-size:20px;
  13.            margin-top:35px;
  14.        }
  15.         .col{
  16.             float:left;
  17.             height:600px;
  18.             text-align: center;
  19.             padding-top: 50px;
  20.             color:#ff44aa;
  21.             font-family:"STFangsong";
  22.         }

  23.         #left{
  24.             background: #9f9;
  25.             width:400px;
  26.             margin-left:-100%;
  27.             position: relative;
  28.             right:400px;

  29.         }
  30.         #main{
  31.             background:#6f6;
  32.             width:100%;

  33.         }
  34.         #right{
  35.             background:#3f3;
  36.             width:400px;
  37.             margin-right:-400px;
  38.         }
  39.     </style>
  40. </head>
  41. <body>
  42. <div id="page">
  43.     <div id="main" class="col">
  44.         <h1>白居易《牡丹》</h1>
  45.         <img src="1.png">
  46.         <p>绝代只西子,众芳惟牡丹。</p>
  47.     </div>
  48.     <div id="left" class="col">
  49.         <h1>王安石《梅》</h1>
  50.         <img src="2.png">
  51.         <p>墙角数枝梅,凌寒独自开。</p>
  52.     </div>
  53.     <div id="right" class="col">
  54.         <h1>张学良《咏兰诗》</h1>
  55.         <img src="3.png">
  56.         <p>花中真君子,风姿寄高雅</p>
  57.     </div>
  58. </div>
  59. </body>
  60. </html>
复制代码

360截图20180623095713384.png

点评

我很赞同!: 5.0
我很赞同!: 5
  发表于 2018-7-9 16:40

评分

参与人数 1鱼币 +5 收起 理由
不二如是 + 5 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-9 16:27:34 | 显示全部楼层
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style type="text/css">
          #page{
            padding-left: 400px;
            padding-right: 400px;
        }
                #left{
            background: #9F9;
            width: 400px;
                        margin-left: -100%;            
                        position: relative;
            right:400px;
        }
        #main{
            background: #6F6;
            width: 100%;
        }
        #right{
            background: #3F3;
            width: 400px;
                        margin-right: -400px;
        }
        .col{
            float: left;
            height: 666px;
                        text-align: center;
                        color: #FF44AA;
            font-family: "STFangsong";
        }
                .col h1{
            margin-top: 50px;
        }
                .col p{
            font-size: 20px;
            margin-top: 50px;
        }

    </style>
</head>
<body>
    <div id="page">
        <div id="main" class="col">
            <h1>白居易《牡丹》</h1>
            <img src="1.png" width=250 height=250>
            <p>绝代只西子,众芳惟牡丹。</p>
        </div>
        <div id="left" class="col">
            <h1>王安石《梅》</h1>
            <img src="2.png" width=250 height=250>
            <p>墙角数枝梅,凌寒独自开。</p>
        </div>
        <div id="right" class="col">
            <h1>张学良《咏兰诗》</h1>
            <img src="3.png" width=250 height=250>
            <p>花中真君子,风姿寄高雅</p>
        </div>
    </div>
</body>
</html>

点评

我很赞同!: 5.0
我很赞同!: 5
  发表于 2018-7-9 16:40

评分

参与人数 1鱼币 +5 收起 理由
不二如是 + 5 鱼C有你更精彩^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-26 15:29:24 | 显示全部楼层
然后由于left、right设置了宽度300px,所以在文档流中就被挤到下一行了。
上句话是误导学生吧,main宽度是100%当然铺满上面一行了,跟下面宽度有什么关系。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-10-26 15:39:21 | 显示全部楼层
#right{margin-left:-300px;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-9 21:42:39 | 显示全部楼层

说下个人的理解吧,开始我也没有搞懂什么意思。主要是大神说的的这里该怎么设置有点不懂比如说左右两边设置-100%这个属性,后面看到效果。想到了是不是和绝对定位这个属性有关?就决定写css代码进行试试实现了同样的效果。其实原理就是绝对定位会脱离标准流,不占用标准流的空间位置。因为左右两边的宽度都是固定的,利用外边距margin空出左右两边的固定区域的宽度用于放置left和right。 简单来说就是让中间自适应区域为标准流,左右两边为浮动在标准流之上。

不知道这样理解对不对。




  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <title>050三列自适应布局</title>
  6.     <style>
  7.         *{
  8.             margin: 0;
  9.             padding: 0;
  10.         }
  11.         body{
  12.             text-align: center;
  13.         }
  14.         .top{
  15.             width: 100%;
  16.             height: 50px;
  17.             background: #cccccc;
  18.         }
  19.         .footer{
  20.             width: 100%;
  21.             height: 50px;
  22.             background: #abdc44;
  23.         }
  24.         /*左右固定,中间自适应*/
  25.         .container{
  26.             width: 100%;
  27.             height: 100%;
  28.             background: #805b77;
  29.             position: relative;
  30.         }
  31.         .left{
  32.             background: cyan;
  33.             width: 400px;
  34.             height: 400px;
  35.             position: absolute;
  36.             left: 0;
  37.             top: 10px;
  38.         }
  39.         .center{
  40.             margin: 0 400px;
  41.             background: red;
  42.             width: auto;
  43.             height: 600px;
  44.         }
  45.         .right{
  46.             background: tomato;
  47.             width: 400px;
  48.             height: 500px;
  49.             position: absolute;
  50.             right: 0;
  51.             top: 10px;
  52.         }
  53.     </style>
  54. </head>
  55. <body>
  56.     <div class="top">顶部</div>
  57.     <div class="container">
  58.         <div class="left">左边</div>
  59.         <div class="center">中间</div>
  60.         <div class="right">右边</div>
  61.     </div>
  62. <div class="footer">底部</div>
  63. </body>
  64. </html>
复制代码
批注.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-27 20:55:35 | 显示全部楼层
好骚的操作啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-2 15:09:10 | 显示全部楼层
细细琢磨~
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. <style type="text/css">
  7. * {
  8.         margin: 0;
  9.         padding: 0;
  10. }
  11. #page {
  12.         padding-left:450px;
  13.         padding-right:450px;
  14. }
  15. #main {
  16.         width:100%;
  17.         background: #f8a5c2;
  18.         
  19. }
  20. #left {
  21.         width:450px;
  22.         background: #f78fb3;
  23.         margin-left: -100%;
  24.         position:relative;
  25.         right:450px;
  26. }
  27. #right {
  28.         width:450px;
  29.         background:#e66767;
  30.         margin-right: -450px;
  31. }
  32. .col {
  33.         float:left;
  34.         height:666px;
  35.         text-align: center;
  36.         color:white;
  37.         font-family:"SamSun";
  38.         font-size: 25px;
  39.         padding-top:99px;
  40. }
  41. #page img {
  42.         margin-top: 50px;
  43. }
  44. #page p {
  45.         margin-top: 50px;
  46. }
  47. </style>
  48. </head>
  49. <body>
  50. <div id="page">
  51.         <div id="main" class="col">
  52.                 <h1>白居易《牡丹》</h1>
  53.                 <img src="hua.png">
  54.                 <p>绝代只西子,众芳惟牡丹。</p>
  55.         </div>
  56.         <div id="left" class="col">
  57.                 <h1>王安石《梅》</h1>
  58.                 <img src="mei.png">
  59.                 <p>墙角数枝梅,凌寒独自开。</p>
  60.         </div>
  61.         <div id="right" class="col">
  62.                 <h1>张学良《咏兰诗》</h1>
  63.                 <img src="lan.png">
  64.                 <p>花中真君子,风姿寄高雅</p>
  65.         </div>
  66. </div>
  67. </body>
  68. </html>
复制代码
homework.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-1-9 23:57:12 | 显示全部楼层
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4.         <meta charset="utf-8">
  5.         <title>无题</title>
  6.         <style type="text/css">

  7.         #left{
  8.             background: #9F9;
  9.             width: 300px;
  10.             margin-left: -100%;
  11.             position: relative;
  12.             right: 300px;
  13.         }
  14.         #page{
  15.             padding-left: 300px;
  16.             padding-right: 300px;
  17.         }
  18.         #main{
  19.              background: #6F6;
  20.              width: 100%;
  21.          }
  22.         #right{
  23.             background: #3F3;
  24.             width: 300px;
  25.             margin-right: -300px;

  26.         }
  27.         #page img {
  28.             margin-left: 50px;
  29.         }
  30.         .col{
  31.             float: left;
  32.             height: 666px;
  33.             padding-top: 50px;
  34.             color: #FF44AA;
  35.             font-family: "STFangsong";
  36.             text-align: center;
  37.         }
  38.         #page p{
  39.             font-size: 20px;
  40.             margin-top: 350px;
  41.         }
  42.         .col img{
  43.             float: left;
  44.         }
  45.         img{
  46.             width:200px;

  47.         }
  48.             #main img{
  49.                 margin-left: 150px;
  50.             }
  51.         </style>
  52. </head>
  53. <body>
  54.         <div id="page">
  55.         <div id="main" class="col">
  56.             <h1>白居易《牡丹》</h1>
  57.             <img src="2.png">
  58.             <p>
  59.                 绝代只西子,众芳惟牡丹。
  60.             </p>
  61.         </div>

  62.             <div id="left" class="col">
  63.                 <h1>王安石《梅》</h1>
  64.                 <img src="3.png">
  65.                 <p>墙角数枝梅,凌寒独自开。</p>
  66.             </div>
  67.             <div id="right" class="col">
  68.                 <h1>张学良《咏兰诗》</h1>
  69.                 <img src="4.png">
  70.                 <p>花中真君子,风姿寄高雅</p>
  71.             </div>
  72.         </div>
  73. </body>
  74. </html>
复制代码
1.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-16 20:05:58 | 显示全部楼层

花.png
加了个阴影左面也有了,阴影能跟着图片自动变吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-24 17:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表