CSS 布局

问题:1. 左右布局 2. 左中右布局

写在最前:加border是为了看到container的宽高,方便做布局与居中,更清楚看到左右的布局

1.左右布局

Ⅰ. 使用float布局

html

<body>
<div class="container clearfix">
      <div class="left">左</div>
      <div class="right">右</div>
</div>
</body>

CSS

.left{
   background-color: red;
  float: left;
}     
.right{
      float: right;
      background-color: blue;
}
1.gpj.png

一. 可以通过调整宽度高度来调整大小
二. 也可以调整宽度百分比
PS :方方说,能不用宽高就不用。

Ⅱ. 使用 position

HTML

<div class="container">
      <div class="left">左</div>
     <div class="right">右</div>
  </div>

CSS

*{
  margin: 0;
  padding: 0;
}
.left{
position: relative;
  background-color: red;
  width: 50px;
}     
.right{ top: 0;
  right:100px;
  position: absolute;
 background-color: blue;
}
2.png

左侧固定,右侧可调整

2. 左中右布局

Ⅰ. 使用float布局

HTML

<div class="container clearfix">
  <div class="left">左</div>
  <div class="mid">中</div>
  <div class="right">右</div>
</div>

CSS

.container{
  width: 300px;
  border: 1px solid red;
  height: 100px;
  margin
}
.left {
  width: 30%;
  float: left;
  background: red;
  height:100%;
}
.mid{
  width: 40%;
  float: left;
  background: green;
  height:100%;
}
.right {
  width: 30%;
  float: right;
  background: blue;
  height:100%;
}
3.png

PS: 根据宽度百分比调整,使用float之后,元素顺次流动(float特点:在另一篇文章中会写出来 《CSS学习笔记》),可以同行排列,相当于display:block
也可以利用float做文字围绕图片效果。

Ⅱ. 使用position布局

HTML

<div class="container">
      <div class="left">左</div>
     <div class="mid">中</div>
     <div class="right">右</div>
  </div>

CSS

*{
  margin: o;
  border: 0;
}
.container{
  max-width:300px;
  margin: 0 auto;  //这一步使整个三栏居中
  position: relative;
  border: 1px solid red;
}
.left {
    width: 50px;
    height: 100%;
    background-color: red;
    position: absolute;
    left: 0;
}      
.mid {
    background-color: green;
    margin: 0 50px;
    position: relative;
}
.right {
    top: 0;
    width: 50px;
    height: 100%;
    background-color: blue;
    position: absolute;
    right:0;
}
4.png

1.父元素设置position:relative;
2.left和right设置position:absolute;并且设置左右侧栏的宽度值。
3.mid设置position:relative;
4.mid设置左右margin值,正好对应左右侧栏的宽度值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 前言 前端圈有个“梗”:在面试时,问个css的position属性能刷掉一半人,其中不乏工作四五年的同学。在...
    YjWorld阅读 10,154评论 5 15
  • 前言 温馨提示:本文较长,图片较多,本来是想写一篇 CSS 布局方式的,但是奈何 CSS 布局方式种类太多并且实现...
    sunshine小小倩阅读 8,352评论 0 59
  • 前言 现在,我们被称为前端工程师。然而,早年给我们的称呼却是页面仔。或许是职责越来越大,整体的前端井喷式的发展,使...
    Calvin李阅读 3,430评论 0 0
  • CSS布局 布局是CSS中一个重要部分,本文总结了CSS布局中的常用技巧,包括常用的水平居中、垂直居中方法,以及单...
    web前端学习阅读 5,525评论 1 38
  • 小时候,最向往的是快点成长到20岁,觉得那是整个人生中最美好的年纪,比糖果甜,比滑梯好玩,比动画片有趣。 因为,总...
    潘雨儿呀阅读 2,833评论 0 0