温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CSS中有哪些常见的布局

发布时间:2022-03-07 10:32:06 来源:亿速云 阅读:139 作者:小新 栏目:web开发

这篇文章将为大家详细讲解有关CSS中有哪些常见的布局,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  1、常见的单列布局:

  header,content和footer等宽的单列布局

  header与footer等宽,content略窄的单列布局

  2、如何实现

  对于第一种,先通过对header,content,footer统一设置width:1000px;或者max-width:1000px(这两者的区别是当屏幕小于1000px时,前者会出现滚动条,后者则不会,显示出实际宽度);然后设置margin:auto实现居中即可得到。

  <pclass="header"></p>

  <pclass="content"></p>

  <pclass="footer"></p>

  .header{

  margin:0auto;

  max-width:960px;

  height:100px;

  background-color:blue;

  }

  .content{

  margin:0auto;

  max-width:960px;

  height:400px;

  background-color:aquamarine;

  }

  .footer{

  margin:0auto;

  max-width:960px;

  height:100px;

  background-color:aqua;

  }

  对于第二种,header、footer的内容宽度不设置,块级元素充满整个屏幕,但header、content和footer的内容区设置同一个width,并通过margin:auto实现居中。

  <pclass="header">

  <pclass="nav"></p>

  </p>

  <pclass="content"></p>

  <pclass="footer"></p>

  .header{

  margin:0auto;

  max-width:960px;

  height:100px;

  background-color:blue;

  }

  .nav{

  margin:0auto;

  max-width:800px;

  background-color:darkgray;

  height:50px;

  }

  .content{

  margin:0auto;

  max-width:800px;

  height:400px;

  background-color:aquamarine;

  }

  .footer{

  margin:0auto;

  max-width:960px;

  height:100px;

  background-color:aqua;

  }

  二、两列自适应布局

  两列自适应布局是指一列由内容撑开,另一列撑满剩余宽度的布局方式

  1.float+overflow:hidden

  如果是普通的两列布局,浮动+普通元素的margin便可以实现,但如果是自适应的两列布局,利用float+overflow:hidden便可以实现,这种办法主要通过overflow触发BFC,而BFC不会重叠浮动元素。由于设置overflow:hidden并不会触发IE6-浏览器的haslayout属性,所以需要设置zoom:1来兼容IE6-浏览器。具体代码如下:

  <pclass="parent"style="background-color:lightgrey;">

  <pclass="left"style="background-color:lightblue;">

  <p>left</p>

  </p>

  <pclass="right"style="background-color:lightgreen;">

  <p>right</p>

  <p>right</p>

  </p>

  </p>

  .parent{

  overflow:hidden;

  zoom:1;

  }

  .left{

  float:left;

  margin-right:20px;

  }

  .right{

  overflow:hidden;

  zoom:1;

  }

  注意点:如果侧边栏在右边时,注意渲染顺序。即在HTML中,先写侧边栏后写主内容

  2.Flex布局

  Flex布局,也叫弹性盒子布局,区区简单几行代码就可以实现各种页面的的布局。

  //html部分同上

  .parent{

  display:flex;

  }

  .right{

  margin-left:20px;

  flex:1;

  }

  3.grid布局

  Grid布局,是一个基于网格的二维布局系统,目的是用来优化用户界面设计。

  //html部分同上

  .parent{

  display:grid;

  grid-template-columns:auto1fr;

  grid-gap:20px

  }

  三、三栏布局

  特征:中间列自适应宽度,旁边两侧固定宽度,实现三栏布局有多种方式(可以猛戳实现三栏布局的几种方法),本文着重介绍圣杯布局和双飞翼布局。

  1.圣杯布局

  ①特点

  比较特殊的三栏布局,同样也是两边固定宽度,中间自适应,唯一区别是dom结构必须是先写中间列部分,这样实现中间列可以优先加载。

  .container{

  padding-left:220px;//为左右栏腾出空间

  padding-right:220px;

  }

  .left{

  float:left;

  width:200px;

  height:400px;

  background:red;

  margin-left:-100%;

  position:relative;

  left:-220px;

  }

  .center{

  float:left;

  width:100%;

  height:500px;

  background:yellow;

  }

  .right{

  float:left;

  width:200px;

  height:400px;

  background:blue;

  margin-left:-200px;

  position:relative;

  right:-220px;

  }

  <articleclass="container">

  <pclass="center">

  <p>圣杯布局</p>

  </p>

  <pclass="left"></p>

  <pclass="right"></p>

  </article>


关于“CSS中有哪些常见的布局”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css
AI