<div class="parent">
<div class="left">我是左边固定</div>
<div class="right">我是右边自适应</div>
</div>
1、左边向左浮动并固定宽度,右边给margin-left (注:右边这个div一定不能给width:100%)
.parent{
width:100%;
height:400px;
}
.left{
float:left;
width:200px;
height:100%;
}
.right{
height:100%;
margin-left:200px;
}
2、父元素相对定位,左边绝对定位并给固定宽度,右边margin-left (注:右边这个div一定不能给width:100%)
.parent{
position:relative;
width:100%;
height:400px;
}
.left{
position:absolute;
left:0;
width:200px;
height:100%;
}
.right{
height:100%;
margin-left:200px;
}
3、父元素相对定位,且需要设置padding-left,左边的元素绝对定位且为固定宽度,右边的元素需要设置width:100%
.parent{
width:100%;
height:400px;
padding-left:200px;
position:relative;
}
.left{
position:absolute;
left:0;
width:200px;
height:100%;
}
.right{
width:100%;
height:100%;
}
4、使用flexbox,父元素display:flex,左边元素固定宽度,右边一定记得加flex:1
.parent{
width:100%;
height:400px;
display:flex;
}
.left{
width:200px;
}
.right{
flex:1;
}
5、利用BFC特性:BFC的元素不能与浮动元素重叠
.parent{
width:100%;
height:400px;
}
.left{
width:200px;
float: left;
}
.right{
overflow: hidden;
}