常用的几种布局方式---Flex 布局(垂直居中展示)

这篇具有很好参考价值的文章主要介绍了常用的几种布局方式---Flex 布局(垂直居中展示)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

怎样让一个元素在垂直或者水平方向居中显示,可以使用css解决,但是会出现不同浏览器的兼容性问题,而flex布局解决了一个父容器和多个子元素的布局问题,从而灵活布局。

一、默认使用静态布局

flex 垂直居中,css3,css,html5,前端

代码展示
flex 垂直居中,css3,css,html5,前端

二、flex布局

1.父元素container

flex 垂直居中,css3,css,html5,前端

1.1.display:flex

在父标签加入display:flex后

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
}

   
   

垂直布局变成水平布局,如下图所示
flex 垂直居中,css3,css,html5,前端

1.2.flex-direction属性

在父标签中修改

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
}

   
   

后又变成垂直布局
flex 垂直居中,css3,css,html5,前端

1.3.主轴与侧轴

先介绍下主轴和交叉轴概念,有些属性只针对主轴生效,部分对交叉轴生效
flex 垂直居中,css3,css,html5,前端

1.4.justify-content属性

justify-content用来设置主轴方向上的子元素排列的方式,属性为center时意味居中显示

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
justify-content:center;
}

   
   

又变成水平居中显示:
flex 垂直居中,css3,css,html5,前端
更改justify-content属性值,justify-content:flex-start后,从起始侧开始排列:
flex 垂直居中,css3,css,html5,前端
justify-content:flex-end后,排列在尾部:
flex 垂直居中,css3,css,html5,前端
想均匀分割子元素的空间距离,可使用justify-content:space-between;
flex 垂直居中,css3,css,html5,前端
justify-content:space-around;
flex 垂直居中,css3,css,html5,前端
justify-content:space-evenly;
flex 垂直居中,css3,css,html5,前端

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
justify-content:center;
}

   
   

注意,此时因为flex-direction:column变成了垂直展示,但是此时垂直方向(从上到下)为主轴,水平方向(自左向右)为交叉轴
修改后变成垂直方向居中显示:
flex 垂直居中,css3,css,html5,前端

1.5.align-items属性

align-items:center用来设置交叉轴方向上的子元素排列的方式,属性为center时意味居中显示

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}

   
   

后使交叉轴方向居中显示:
flex 垂直居中,css3,css,html5,前端

1.6.flex-wrap属性

当网页缩小到页面不足以容纳元素的排列,使盒子中的元素压缩,失去原来的形状,希望能换行展示,则使用
flex-wrap:wrap;

2.子元素items

flex 垂直居中,css3,css,html5,前端

第二个盒子不设定宽度,则盒子宽度就为内容本身宽度
flex 垂直居中,css3,css,html5,前端
代码展示
flex 垂直居中,css3,css,html5,前端
此时修改代码:
文章来源地址https://www.toymoban.com/news/detail-804717.html

.box-2{
background:darkcyan;
flex-grow:1;
}

   
   

前言

怎样让一个元素在垂直或者水平方向居中显示,可以使用css解决,但是会出现不同浏览器的兼容性问题,而flex布局解决了一个父容器和多个子元素的布局问题,从而灵活布局。

一、默认使用静态布局

flex 垂直居中,css3,css,html5,前端

代码展示
flex 垂直居中,css3,css,html5,前端

二、flex布局

1.父元素container

flex 垂直居中,css3,css,html5,前端

1.1.display:flex

在父标签加入display:flex后

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
}

   
   

垂直布局变成水平布局,如下图所示
flex 垂直居中,css3,css,html5,前端

1.2.flex-direction属性

在父标签中修改

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
}

   
   

后又变成垂直布局
flex 垂直居中,css3,css,html5,前端

1.3.主轴与侧轴

先介绍下主轴和交叉轴概念,有些属性只针对主轴生效,部分对交叉轴生效
flex 垂直居中,css3,css,html5,前端

1.4.justify-content属性

justify-content用来设置主轴方向上的子元素排列的方式,属性为center时意味居中显示

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
justify-content:center;
}

   
   

又变成水平居中显示:
flex 垂直居中,css3,css,html5,前端
更改justify-content属性值,justify-content:flex-start后,从起始侧开始排列:
flex 垂直居中,css3,css,html5,前端
justify-content:flex-end后,排列在尾部:
flex 垂直居中,css3,css,html5,前端
想均匀分割子元素的空间距离,可使用justify-content:space-between;
flex 垂直居中,css3,css,html5,前端
justify-content:space-around;
flex 垂直居中,css3,css,html5,前端
justify-content:space-evenly;
flex 垂直居中,css3,css,html5,前端

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
justify-content:center;
}

   
   

注意,此时因为flex-direction:column变成了垂直展示,但是此时垂直方向(从上到下)为主轴,水平方向(自左向右)为交叉轴
修改后变成垂直方向居中显示:
flex 垂直居中,css3,css,html5,前端

1.5.align-items属性

align-items:center用来设置交叉轴方向上的子元素排列的方式,属性为center时意味居中显示

.wrap{
height:800px;
border:28px solid antiquewhite;
display:flex;
flex-direction:column;
justify-content:center;
align-items:center;
}

   
   

后使交叉轴方向居中显示:
flex 垂直居中,css3,css,html5,前端

1.6.flex-wrap属性

当网页缩小到页面不足以容纳元素的排列,使盒子中的元素压缩,失去原来的形状,希望能换行展示,则使用
flex-wrap:wrap;

2.子元素items

flex 垂直居中,css3,css,html5,前端

第二个盒子不设定宽度,则盒子宽度就为内容本身宽度
flex 垂直居中,css3,css,html5,前端
代码展示
flex 垂直居中,css3,css,html5,前端
此时修改代码:

.box-2{
background:darkcyan;
flex-grow:1;
}

   
   

到了这里,关于常用的几种布局方式---Flex 布局(垂直居中展示)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 圣杯布局/双飞翼布局/flex/grid等,实现CSS三栏自适应布局的几种方法

    三栏布局是网页设计中常用的布局,即网页中的内容被分为三块:左侧/中间/右侧。其中两侧部分宽度固定,中间部分宽度自适应的根据容器(浏览器)宽度撑满剩余空间。而三栏布局也有很多变形,比如两栏或者N栏布局,上中下三栏布局,嵌套混合布局等等。掌握了三栏布

    2024年02月05日
    浏览(48)
  • 前端技术中的几种居中方式

    1、使用margin:0px auto可以使盒子水平居中,但要设置宽度。 2、在父元素中使用text-align:center可以将子元素设置水平居中,但子元素必须为行内元素或行内块元素。 3、使用绝对定位,父相子绝的原则,在子元素中设置left:50%和transform:translateX(-50%)。可以不设置宽高。       这里

    2024年02月04日
    浏览(49)
  • 前端div水平居中的几种实现方式

    父元素开启 display:flex 布局,并设置 justify-content:center 主轴的空隙分布 因为是单行,所以使用 align-items:center 设置侧轴上的对其方式 啊啊啊 借助这一条规则 文章: https://www.zhihu.com/question/21644198/answer/42702524 https://www.w3.org/TR/CSS2/visudet.html#blockwidth top、left、right、bottom 设置百分比基

    2024年02月07日
    浏览(66)
  • CSS水平垂直居中(最常见的三种方案flex、grid、absolute)

    本文简单介绍一下现代 CSS 中最常见的三种水平垂直居中方案。 html: css: 方案1:父元素设置 flex 布局,并设置主轴以及交叉轴的对齐方式: 方案2:父元素设置 flex 布局,子元素设置 margin: auto : 父元素设置 grid 布局,以及 place-items: center 。 place-items  是  align-items  和 

    2024年01月16日
    浏览(47)
  • flex布局居中

    要在 flex 布局中居中元素,可以使用 justify-content: center 和 align-items: center 。 这会使元素在容器中水平居中和垂直居中。 如果你只想要垂直居中,可以只使用 align-items: center 。 如果你只想要水平居中,可以只使用 justify-content: center 。 注意,这些样式只在父元素是 flex 布局时

    2024年02月11日
    浏览(42)
  • 【CSS 布局】水平垂直方向居中

    单行元素 方式一: relative 和 absolute 方式二: relative 和 absolute (变种,适合于宽高固定) 方式三: flex 和 margin 方式四: flex 方式五: flex 多行元素

    2024年02月13日
    浏览(43)
  • 【布局技巧】Flex 布局下居中溢出滚动截断问题

    在页面布局中,我们经常会遇到/使用这么一类常见的布局,也就是列表内容水平居中于容器中,像是这样: 效果如下: 这里,外层的容器是定宽的,内层的 flex-item 也是定宽的。 当 flex-item 个数较小时,是没有问题的。但是,如果当元素内容过多,并且设置了 flex-wrap: nowr

    2024年02月05日
    浏览(44)
  • CSS三栏布局的几种自适应的排版方式

       CSS三栏布局的几种方式,主要有 float、position、flex实现。    对红色、蓝色 box 设置 float,绿色不设。    可见,结果绿色box好像消失了,其实是由于没有设置 float的情况下,它依然保持块级元素的属性。因此蓝色box在绿色box的元素下排列。    把绿色块元素移到最

    2024年02月16日
    浏览(42)
  • 元素的水平居中和垂直几种方案

    总结一下各种元素的水平居中和垂直居中方案。 定义行内内容(例如文字)如何相对它的块父元素对齐 ; 不仅可以让文字水平居中,还可以让 行内元素 水平居中 注意:给行内元素的父元素设置 left:左对齐 right:右对齐 center:正中间显示  justify:两端对齐  设置当前块级

    2024年02月06日
    浏览(44)
  • 微信小程序布局图片上面显示文字以及文字水平垂直居中

     博主介绍: 本人专注于Android/java/数据库/微信小程序技术领域的开发,以及有好几年的计算机毕业设计方面的实战开发经验和技术积累;尤其是在安卓(Android)的app的开发和微信小程序的开发,很是熟悉和了解;本人也是多年的Android开发人员;希望我发布的此篇文件可以帮

    2024年02月14日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包