如何解决移动端两栏自适应的问题?overflow:hidden
要求:第一水平方向不要有滚动条;第二,水平第一个侧栏宽度固定,第二个侧栏宽度自适应
1 明确元素的宽度:块级元素 默认占据整行,如果不设置宽度,则默认和父元素等宽;行内块元素的宽度由内容决定,可以自行设置;行内元素的宽度由内容决定,不可设置宽高;
2 设置了浮动或者定位的层的宽宽由内容决定,发生元素转换,display:inline-block;
3 目的是实现 :右边栏的宽度 = 屏幕宽度 - 左边栏宽度 ,以此来实现右边栏里面的内容进行百分比设置宽度以自适应屏幕的时候,是以 右边栏的宽度 = 屏幕宽度 - 左边栏宽度 为基准的。
4 注意理解块级元素的流体特性:在默认情况下(非浮动、定位),块级元素会默认在水平方向自动填满外部的容器(自动填满父元素)。
5 浮动元素left和触发了BFC特性的元素right,right栏自适应,right设置overflow:hdden,触发BFC特性,即可实现right自动填充剩余的空间,而不是那种文字环绕图片的效果。
|
|
6 注意:高潮来了,如何设置left和right之间的间隙呢?
- 给right设置margin-right 或者 padding-left
|
|
|
|
- 给left设置margin-right 或者 padding-right 来撑开两栏之间的间隙
|
|
7 BFC自适应布局的组件化代码
|
|
8 如果是右边栏宽度固定,左边栏宽度自适应呢?
解析顺序不同会导致占位不同,所以只需要将右边写在左边前面即可
|
|