一、div撑满整个屏幕
1、绝对定位
<style>
* {
margin: 0;
padding: 0;
}
.main {
position: absolute;
width: 200px;
height: 100%;
background: yellowgreen;
}
</style>
</head>
<body>
<div class="main">
</div>
</body>
2、设置html、body的高度
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.main {
width: 200px;
height: 100%;
background: yellowgreen;
}
</style>
</head>
<body>
<div class="main">
</div>
</body>
最后的结果:
二、左右布局(左固定,右自适应)
1、 float + margin布局
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.left {
float: left;
width: 200px;
height: 100%;
background: yellowgreen;
}
.right {
height: 100%;
margin-left: 200px;
background: orange;
}
</style>
</head>
<body>
<div class="left"></div>
<div class="right"></div>
</body>
2、position + margin
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
position: relative;
width: 100%;
height: 100%;
}
.left {
position: absolute;
width: 200px;
height: 100%;
background: yellowgreen;
}
.right {
height: 100%;
margin-left: 200px;
background: orange;
}
</style>
</head>
<body>
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
3、flex伸缩盒
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
display: flex;
display: -webkit-flex;
width: 100%;
height: 100%;
}
.left {
width: 200px;
background: greenyellow;
}
.right {
flex-grow:1;
-webkit-flex-grow:1;
background: orange;
}
</style>
</head>
<body>
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
</div>
</body>
三、左、中、右布局(两侧定宽,中间自适应)
1、float + margin
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
width: 100%;
height: 100%;
}
.left {
float: left;
width: 200px;
height: 100%;
background: greenyellow;
}
.right {
float: right;
width: 200px;
height: 100%;
background: orchid;
}
.middle {
height: 100%;
margin-left: 200px;
margin-right: 200px;
background: orange;
}
</style>
</head>
<body>
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
<div class="middle"></div>
</div>
</body>
2、position + margin
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
position: relative;
width: 100%;
height: 100%;
}
.left {
position: absolute;
left: 0px;
width: 200px;
height: 100%;
background: greenyellow;
}
.right {
position: absolute;
right: 0px;
width: 200px;
height: 100%;
background: orchid;
}
.middle {
height: 100%;
margin-left: 200px;
margin-right: 200px;
background: orange;
}
</style>
</head>
<body>
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
<div class="middle"></div>
</div>
</body>
3、flex伸缩盒
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
height: 100%;
display: flex;
display: -webkit-flex;
}
.left {
height: 100%;
width: 200px;
background-color: red;
}
.right {
height: 100%;
width: 200px;
background-color: green;
}
.middle {
height: 100%;
flex-grow: 1;
-webkit-flex-grow: 1;
background-color: yellow;
}
</style>
</head>
<body>
<div class="wrap">
<div class="left"></div>
<div class="middle"></div>
<div class="right"></div>
</div>
</body>
四、上下布局
1、position: absolute
<style>
* {
margin: 0;
padding: 0;
}
html, body {
width: 100%;
height: 100%;
}
.wrap {
position: relative;
width: 100%;
height: 100%;
}
.top {
position: absolute;
left: 0px;
top: 0px;
width: 100%;
height: 200px;
background: red;
}
.content {
width: 100%;
height: 100%;
background: green;
}
</style>
</head>
<body>
<div class="wrap">
<div class="top"></div>
<div class="content"></div>
</div>
</body>