css常见⾃适应布局
1.两列布局,左侧宽度固定,右侧宽度⾃适应
1.1.左侧进⾏浮动,右侧设置margin-left
/* 1.利⽤浮动进⾏布局*/
.left {
float: left;
width: 200px;
height: 200px;
background-color: cornflowerblue;
}
.right {
margin-left: 200px;
height: 200px;
background-color: bisque;
}
<div class="left"></div>
<div class="right"></div>
1.2.利⽤绝对定位来代替浮动
/* 2.利⽤绝对定位进⾏布局*/
.wrap {
position: relative;
}
.
left {
position: absolute;
top: 0;
left: 0;
width: 200px;
height: 200px;
background-color: cornflowerblue;
}
.right {
margin-left: 200px;
height: 200px;
background-color: bisque;
}
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
</div>
2.两列布局,右侧宽度固定,左侧宽度⾃适应
2.1.利⽤浮动进⾏布局
/* 1.利⽤浮动进⾏布局*/
.left {
margin-right: 200px;
height: 200px;
background-color: cornflowerblue;
}
.right {
float: right;
width: 200px;
height: 200px;
background-color: bisque;
}
<div class="right"></div>
<div class="left"></div>
注:right要写在left的前⾯,否则会出现如下问题。然后百度了下,终于到了如下⼀段话(⾸先要明⽩浮动元素只对后⾯元素有影响,浮动元素本⾝并不浮动,只是脱离⽂档流,后⾯的元素会上移⽽占据浮动元素的位置)
2.2.利⽤绝对定位进⾏布局
/* 2.利⽤绝对定位进⾏布局*/
.wrap {
position: relative;
}
.left {
margin-right: 200px;
height: 200px;
background-color: cornflowerblue;
}
.right {
position: absolute;
top: 0;
right: 0;
width: 200px;
height: 200px;
background-color: bisque;
}
<div class="wrap">
<div class="left"></div>
<div class="right"></div>
</div>
3.三列布局,中间宽度固定,两侧宽度⾃适应/* 1.常规实现⽅式*/
.wrap {
overflow: hidden;
}
.left,
.right {
width: 50%;
height: 200px;
background-color: cornflowerblue;
}
.left {
margin-left: -300px;
float: left;
}
.right {
margin-right: -300px;
float: right;
}
.center {
margin: 0 auto;
width: 600px;
height: 200px;
background-color: bisque;
}
<div class="wrap">
<div class="right"></div>
<div class="left"></div>
<div class="center"></div>
</div>
4.三列布局,中间宽度⾃适应,两侧宽度固定4.1.利⽤浮动实现
/* 1.浮动实现⽅式*/
.
left,
.right {
width: 300px;
height: 200px;
background-color: cornflowerblue;
}
.left {
float: left;
}
.right {
float: right;
}
.center {
margin: 0 300px;
height: 200px;
background-color: bisque;
}
<div class="right"></div>
<div class="left"></div>
<div class="center"></div>
4.2.利⽤绝对定位实现
/* 2.绝对定位⽅式实现*/
.
left,
.right {
position: absolute;
top: 0;
width: 300px;
height: 200px;
background-color: cornflowerblue;
}
.left {
left: 0;
}
.
right {
right: 0;
}
.center {
margin: 0 300px;
height: 200px;
background-color: bisque;
}
<div class="right"></div>
<div class="left"></div>
<div class="center"></div>
5.两列,左右等⾼显⽰
.wrap {
overflow: hidden;
}
.left,
.right {
margin-bottom: -10000px;
padding-bottom: 10000px;
css实现三列布局}
.left {
background-color: cornflowerblue;
}
.right {
float: right;
width: 400px;
background-color: bisque;
}
<div class="wrap">
<div class="right">
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
</div>
<div class="left">
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p><p>10. 是否忘记了写DTD?</p> <p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p><p>10. 是否忘记了写DTD?</p> <p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>
<p>10. 是否忘记了写DTD?</p>定width属性。另外指定元素时尽量使⽤em⽽不是px做单位。</p>
</div>
</div>
注:以上例⼦均是在简单的清除了默认样式的情况下进⾏的
* {
margin: 0;
padding: 0;
color: #fff;
}
各位看官,有钱的捧个钱场,没钱的捧个⼈场,要是觉得好就打赏点吧,hey hey hey
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论