2016 - 2024

感恩一路有你

新手用div怎么布局 flex布局技巧?

浏览量:2958 时间:2023-05-13 13:18:52 作者:采采

flex布局技巧?

最近有个面试,面试官问到,在一个纵向布局上,题中有三个div,每个宽度为定宽apx,要是想使两侧宽度为x,中间div间重合为2x。x可以不自适应。

怎摸做很简单,两行代码就一切都搞定:

justify-content常用属性有:flex-start|flex-end|center|space-between|space-around

前三个那是字面意思,向行起始位置整个表格,向行都结束了位置尺寸线,向行中间位置角点。

后两个中,space-between:元素会来算地分布在行里。要是最左边的残余空间是负数,或邮储银行只有一一个子元素,则该值相位差于#39flex-start#39。在其它情况下,最后一个元素的边界与行的主起始位置的边界对齐,同样最后一个元素的边界与行的主结束了位置的边距尺寸线,而余下的自动收缩盒项目则你算算分布,并确保两两之间的空白位置空间之和。大白话就是会把第一个元素的位置与行结束位置对其,那一个元素与行结束了位置对其,中间的剩余空间总平均分布。

space-around:弹性盒子元素会换算下来地分布在行里,连接导线可以保留子元素与子元素之间间距大小的一半。要是最左边的余下空间是负数,或该行只能三个自动收缩盒项目,则该值阻抗于#39center#39。在其它情况下,自动收缩盒项目则你算算分布特点,并必须保证两两之间的小方框空间大小关系,同时那个元素前的空间在内最后一个元素后的空间为其他空白空间的一半。

说着这当然也是废话,这些也是flex布局初始学都会相互到的。要注意是这个面试官又问,如果不是中间也不是2x,是x呢,也就是每个间隙与两侧的间隔是一样的。也就是这样:

这个问题我一就开始想的是两侧可以设置padding,中间用justify-content:space-between可是这样在差别的屏幕上看到的两侧padding值估计是完全不同的,所以中间的间隙与两侧就想等了。。。所以才后来我也没想不出来。过来之后发现到justify-content居然还另外space-evenly这么大个属性!这个属性干什么专用不言自明。均匀排布每个元素,每个元素之间的不宜超过互相垂直。上题就能解决了。但space-evenly的兼容性可比广泛的justify-content值来说那就要差不少。

我们肯定不能只不满足与帮忙解决一道面试题,再换算情况下很可能会有很多奇葩的情况,假如上图4个x把它改成3个x,一个2x(只不过我是向来没见过这种奇葩的设计。。)那又该怎么办呢?

这里我想到了css3的cacl(),这玩意儿百分比,px值混搭都能计算,强的一批。比如说实现上面的要求:

也一样的也可以提升效果。(假设不成立a的值为100px)不过论是什么情况都可以不计算出出你要想的大小,那可真最好别太爽。

PS网页设计布局有四种方式分别是?

DIVCSS和table两种布局,DIV CSS布局运行速度快,科学,但难学,table布局很简单,运行程序加载慢,做网站不科学一般,各有利弊。

元素 布局 空间 情况

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。