关键词:
两列布局
效果:
4.1 左列定宽,右列自适应
(1)利用float+margin实现
html代码:
<body> <div id="left">左列定宽</div> <div id="right">右列自适应</div> </body>
css代码:
#left background-color: #f00; float: left; width: 100px; height: 500px; #right background-color: #0f0; height: 500px; margin-left: 100px; /*大于等于#left的宽度*/
(2)利用float+margin(fix)实现
html代码:
<body> <div id="left">左列定宽</div> <div id="right-fix"> <div id="right">右列自适应</div> </div> </body>
css代码:
#left background-color: #f00; float: left; width: 100px; height: 500px; #right-fix float: right; width: 100%; margin-left: -100px; /*正值大于或等于#left的宽度,才能显示在同一行*/ #right margin-left: 100px; /*大于或等于#left的宽度*/ background-color: #0f0; height: 500px;
(3)使用float+overflow实现
html代码:
<body> <div id="left">左列定宽</div> <div id="right">右列自适应</div> </body>
css代码:
#left background-color: #f00; float: left; width: 100px; height: 500px; #right background-color: #0f0; height: 500px; overflow: hidden; /*触发bfc达到自适应*/
(4)使用table实现
html代码:
<div id="parent"> <div id="left">左列定宽</div> <div id="right">右列自适应</div> </div>
css代码:
#parent
width: 100%;
display: table;
height: 500px;
#left
width: 100px;
background-color: #f00;
#right
background-color: #0f0;
#left,#right
display: table-cell; /*利用单元格自动分配宽度*/
(5)使用绝对定位实现
html代码:
<body> <div id="parent"> <div id="left">左列定宽</div> <div id="right">右列自适应</div> </div> </body>
css代码:
#parent position: relative; /*子绝父相*/ #left position: absolute; top: 0; left: 0; background-color: #f00; width: 100px; height: 500px; #right position: absolute; top: 0; left: 100px; /*值大于等于#left的宽度*/ right: 0; background-color: #0f0; height: 500px;
(6)使用flex实现
html代码:
<body> <div id="parent"> <div id="left">左列定宽</div> <div id="right">右列自适应</div> </div> </body>
css代码:
#parent width: 100%; height: 500px; display: flex; #left width: 100px; background-color: #f00; #right flex: 1; /*让所有弹性盒模型对象的子元素都有相同的长度,忽略它们内部的内容:*/ background-color: #0f0;
4.2 左列自适应,右列定宽
html代码:
<body> <div id="parent"> <div id="left">左列自适应</div> <div id="right">右列定宽</div> </div> </body>
css代码:
#parent height: 500px; padding-left: 100px; /*抵消#left的margin-left以达到#parent水平居中*/ #left width: 100%; height: 500px; float: left; margin-left: -100px; /*正值等于#right的宽度*/ background-color: #f00; #right height: 500px; width: 100px; float: right; background-color: #0f0;
(2)使用float+overflow实现
html代码:
<body> <div id="parent"> <div id="right">右列定宽</div> <div id="left">左列自适应</div> <!--顺序要换一下--> </div> </body>
css代码:
#left overflow: hidden; /*触发bfc*/ height: 500px; background-color: #f00; #right margin-left: 10px; /*margin需要定义在#right中*/ float: right; width: 100px; height: 500px; background-color: #0f0;
(3)使用table实现
html代码:
<body> <div id="parent"> <div id="left">左列自适应</div> <div id="right">右列定宽</div> </div> </body>
css代码:
#parent width: 100%; height: 500px; display: table; #left background-color: #f00; display: table-cell; #right width: 100px; background-color: #0f0; display: table-cell;
(4)使用绝对定位实现
html代码:
<body> <div id="parent"> <div id="left">左列自适应</div> <div id="right">右列定宽</div> </div> </body>
css代码:
#parent position: relative; /*子绝父相*/ #left position: absolute; top: 0; left: 0; right: 100px; /*大于等于#rigth的宽度*/ background-color: #f00; height: 500px; #right position: absolute; top: 0; right: 0; background-color: #0f0; width: 100px; height: 500px;
(5)使用flex实现
html代码:
<body> <div id="parent"> <div id="left">左列自适应</div> <div id="right">右列定宽</div> </div> </body>
css代码:
#parent height: 500px; display: flex; #left flex: 1; background-color: #f00; #right width: 100px; background-color: #0f0;
4.3 一列不定,一列自适应
(盒子宽度随着内容增加或减少发生变化,另一个盒子自适应)
(1)使用float+overflow实现
html代码:
<body> <div id="parent"> <div id="left">左列不定宽</div> <div id="right">右列自适应</div> </div> </body>
css代码:
#left margin-right: 10px; float: left; /*只设置浮动,不设宽度*/ height: 500px; background-color: #f00; #right overflow: hidden; /*触发bfc*/ height: 500px; background-color: #0f0;
(2)使用flex实现
html代码:
<body> <div id="parent"> <div id="left">左列不定宽</div> <div id="right">右列自适应</div> </div> </body>
css代码:
#parent display: flex; #left /*不设宽度*/ margin-right: 10px; height: 500px; background-color: #f00; #right height: 500px; background-color: #0f0; flex: 1; /*均分#parent剩余的部分*/
bfc_两列布局(代码片段)
BFC布局规则2:BFC不会与floatbox重叠当overflow不为visible时会生成BFC布局结构:<!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>两列布局</title><style>*margin:0;padding:0;bodymin 查看详情
css常见两列布局三列布局(代码片段)
一、两列布局: 方法一:采用position:absollute;并设置margin-left的值。#leftposition:absolute;width:300px;top:0px;left:0px;background:#F00;#rightbackground:#0FC;margin-left:300px;<divid="left">左边定宽</div>&l 查看详情
两列自适应布局(代码片段)
第一种写法: wxml:<viewclass="page_first"><viewclass="page_li"wx:for="4"></view></view>wxss:.page_firstpadding:30rpx;box-sizing:border-box;display:f 查看详情
两列布局:6种方法(代码片段)
面试过程中总会文档两列布局,左边等宽,右边自适应几种方法?以下提供6种为君解忧<divid="wrap"><divid="left"></div><divid="right"></div></div>需求就是左侧定宽,右侧自适应。(height先... 查看详情
小程序中的网格布局(代码片段)
...使用的布局。在电商场景中,我们经常会看到商品的两列布局,通常在CSS中,两列布局可以使用网格布局的方案解决。我们本篇就讲解一下CSS的网格布局,并结合一个布局的小案例来讲解一下网格布局在实际场景... 查看详情
小程序中的网格布局(代码片段)
...使用的布局。在电商场景中,我们经常会看到商品的两列布局,通常在CSS中,两列布局可以使用网格布局的方案解决。我们本篇就讲解一下CSS的网格布局,并结合一个布局的小案例来讲解一下网格布局在实际场景... 查看详情
瀑布流布局(代码片段)
...的、视觉上像瀑布一样的布局。这里简化一下,只要两列等宽布局展示图片即可。思路两列布局,直接使用flex布局实现即可。不过,这里不能设置align-items为center,如果设置了将会使图片列居中显示,不符合... 查看详情
七栅格系统布局(grid)(代码片段)
...grid-template-row-->定义列|grid-template-row:100px100px;|-->定义两列,每列(高度)为100px|grid-template-row:repeat(2,50%);|-->定义两列,每列(高度)为父元素的50% 查看详情
flex做的圣杯布局(代码片段)
...的圣杯布局,大家可以参考一下子 首先圣杯布局是两列固定宽度,中间自适应。 我直接说一下步骤,上图,上图 1.步骤1 2.步骤2 上面就是基本的步骤,下面我把代码给... 查看详情
div标准布局示例(代码片段)
1<!DOCTYPEhtml>2<html>3<head>4<metacharset="UTF-8">5<title>横向两列布局</title>6<style>7*margin:0;padding:0;8#warp9width:960px;10margin:0auto;11margin-top:10px;1 查看详情
常用布局的实现(两列布局三列适应布局,两列等高适应布局等)
两列布局:左侧定宽,右侧自适应方法一:利用float和负外边距<style>*{ margin:0; padding:0;}.main,.sitebar{ font:bolder20px/300px;}.main{ width:100%; float:left;}.main.content{ margin-left:200px; background-color:red;}.siteb 查看详情
bootstrap布局两列或者多列表单
1,代码如下:<divclass="form-group"><labelfor="starttime"class="col-sm-2control-label">实际开始时间</label><divclass="col-md-4"><inputclass="form-control"type="text"id="starttime"readon 查看详情
React Native iOS 应用程序中的两列布局
】ReactNativeiOS应用程序中的两列布局【英文标题】:TwocolumnlayoutinReactNativeiOSapp【发布时间】:2017-04-2015:24:32【问题描述】:在我的ReactNative应用程序中,我试图为一组项目实现两列布局。我正在处理的代码:<Content><Gridstyle... 查看详情
css两列自适应布局的4种思路
前面的话 前面已经介绍过css两列布局中单列定宽单列自适应布局的6种思路的两列布局,而两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式。本文将从float、table、flex和grid来介绍两列自适应布局的4种思... 查看详情
两列布局
很多网站都使用了两列布局,就是左边固定,右边自适应的布局。两列布局有多种方法,现在来列举一下 第一种:margin+float/ margin+absolute 将左边设置float或者... 查看详情
css两列布局的多种实现方式及原理。
两列布局是非常常见的需求在实际项目中,实现的方式也有很多。这里提供几种实现方式和原理。供大家参考 页面基本布局如下代码所示: 1<divclass="main">2<divclass=‘left‘>3左侧14</div>5<divclass=‘right‘&... 查看详情
两列布局中单列定宽单列自适应布局的5种思路
思路一:float 说起两列布局,最常见的就是使用float来实现。float浮动布局的缺点是浮动后会造成文本环绕等效果,以及需要及时清除浮动。如果各浮动元素的高度不同时,可能会出犬牙交错的效果【1】float+margin 将定宽的... 查看详情
两列布局——只用右浮动
通过这个实验我明白了一个知识点,做左右结构的时候,不用把左边的写上左浮动,只需要把有浮动的块放到最前边,并设置有浮动,左边的放在有浮动的下边而且不用管,这样,父元素也不用清楚浮动,左边的元素也不用左浮... 查看详情