布局

简介: ​ 可选值:​ visible. 默认值 子元素会从父元素中溢出,在父元素外部的位置显示​ hidden 溢出的内容将会被裁剪不会显示 (一剪没)​ scroll 滚 ,生成两个滚动条,通过滚动条来查看完整的内容​ auto 根据我们需要生成滚动条​ overflow-x:单独处理水平的​ overflow-y: 单独处理垂直的

布局

/*

​ 元素的水平方向的布局:

​ 元素在其父元素中水平方向的位置由以下几个属性共同决定

​ margin-left

​ border-left

​ padding-left

​ width

​ padding-right

​ border-right

​ margin-right

​ 一个元素在其父元素中,水平布局必须要满足以下的等式

margin-left+border-left+padding-left+width+padding-right+border-right+margin-right =其父元素内容区的宽度(必须满足)

​ -以上等式必须满足,如果相加结果使等式不成立,则称为过渡约束,则等式会自动调整

​ -调整的情况

​ -如果这七个值中没有为auto的情况,则浏览器会自动调整margin-right以使等式满足(margin-right相当于一个没有用的元素,就是为了使等式成立的)这七个值中有三个值和设置为auto

​ width

​ margin-left

​ margin-right

​ -如果某个值为auto,则自动调整为auto的那个值以使等式成立(谁是auto就调整谁,而且width的值默认就是auto)

​ 我们说我们块元素默认的宽度是父元素的百分之百,其实不是百分之百,而是auto,自动设置。

*/

image-20230514155828806

-如果0+1000+0=800 怎么办,这个时候margin-right就会被设置成-200,那么margin-right为负值,就说明什么,说明会突出去,朝相同方向再突出200

-如果将一个宽度和一个外边距设置为auto,则宽度会调整到最大,设置为auto的外边距会自动为0

-如果将三个值都设置为auto,则外边距都是0,宽度最大

-如果将两个外边距设置为auto,宽度固定值,则会将我们的外边距设置为相同的值

​ 如 auto + 0 + 0 + 200 + 0 + 0 + auto = 800 auto = 300

​ 所以我们经常利用这个特点来使一个元素在其父元素中水平居中

​ 示例:

​ width:xxxpx;

​ margin:0 auto;

垂直方向的布局

image-20230623165045871

image-20230623165133176

/*

​ 默认父元素的高度被内容撑开,父元素设置了高度是多少就是多少,但是如果没有设置高度的话,就会被内容撑开,内容是多少就多高。

*/

image-20230623165432780

/*

​ 子元素是在父元素的内容区中排列的,

​ 如果子元素的大小超过了父元素,则子元素会从父元素中溢出

​ 使用overflow 属性来设置父元素如何处理溢出的元素

​ overflow

​ 可选值:

​ visible. 默认值 子元素会从父元素中溢出,在父元素外部的位置显示

​ hidden 溢出的内容将会被裁剪不会显示 (一剪没)

​ scroll 滚 ,生成两个滚动条,通过滚动条来查看完整的内容

​ auto 根据我们需要生成滚动条

​ overflow-x:单独处理水平的

​ overflow-y: 单独处理垂直的

*/

相关文章
|
1月前
|
前端开发 容器
|
7月前
|
前端开发
两栏布局的实现
两栏布局的实现
|
Web App开发 设计模式 前端开发
DIV+CSS布局总结
DIV+CSS布局总结
|
前端开发 容器
两栏布局的实现方式
两栏布局的实现方式
|
前端开发 容器
从0开始学习FlexBox布局
之前研究过一篇《移动端适配总结》,里面主要通过布局不变,改变布局组件元素的大小去适应移动端。但是这种方式对于PC端或者Pad等大屏幕并不适合,所以从想找找看是否有新的方案能否满足跨端自适应布局方式。
112 0
|
编解码 前端开发 Android开发
移动布局基础(流式布局)
移动布局基础(流式布局)
132 0
|
Android开发
【Android教程】01 布局
【Android教程】01 布局
139 0
【Android教程】01 布局
|
Web App开发 C++ 容器
Flexbox布局的正确使用姿势
Flexbox布局的正确使用姿势
147 0
|
容器
盒式布局
盒式布局
252 0
盒式布局
|
容器
BorderLayout布局
BorderLayout布局
175 0
BorderLayout布局
下一篇
DataWorks