flex布局 flex-direction 问题

clipboard.png

最近在学flex布局,flex有一条水平主轴,和一条垂直的交叉轴。
当设置flex-direction:column时,水平主轴变为垂直。。。。。那交叉轴去哪了?变为水平了难道?懵逼。搞不懂啊。求大神解惑。

阅读 7k
4 个回答
div{
    flex-direction: row;           //弹性盒子内部的元素以 水平 方向排列(默认)
    flex-direction: column;        //弹性盒子内部的元素以 垂直 方向排列
    flex-direction: row-reserve;   //弹性盒子内部的元素以水平逆方向排列
    flex-direction: column-reserve;//弹性盒子内部的元素以垂直逆方向排列
}

你所说的主轴跟交叉轴,应该是我了解到的主轴跟侧轴(也有叫副轴的)
定义了水平方向排列,那么侧轴就是垂直的。(默认)
定义了垂直方向排列,那么侧轴就是水平的。

column是垂直、row是水平。也就是说用flex弹性布局的时候,你的div里的子元素应该按照什么方式排列显示,row是以水平排列,column是以垂直排列。如果以column排列,那么辅轴就是row,这两个轴是相对的。

flex-direction的属性为column时,会沿交叉轴排列,也就是竖直排列,默认是row,沿主轴水平排列

虽然时间已经很久了,我也来回复一下。
当设置:flex-direction: column | column-reverse; 时,交叉轴变为 自左向右,就是 ==> 这个方向了。
MDN,以及一些 博客中都没有提及。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题