CSS盒子模型
---恢复内容开始---
CSS盒子模型:盒子模型其实就相当于想象CSS中的每个元素都放在一个不可见的盒子里,那么为什么要将其想象成盒子呢,如果将每个元素都想象成一个盒子,那么再布局的时候就相当于摆放盒子,只需要将盒子放在相应的地方即可,一个盒子可以分为:内容区、内边距(padding)、边框、外边距(margin)
为元素设置边框必须指定三个属性:border-width border-color border-style(实线、虚线)
由于盒子的摆放默认为靠上靠左的,所以当我们设定左外边距和上外边距,会导致盒子本身的位置发生改变。而设置下外边距和右外边距的时候回导致其他盒子的位置的改变,如果外边距设置的是负值,那么盒子会向反方向移动
在CSS中,垂直方向的相邻外边距会发生一个外边距的重叠,会取两个边距的最大值
浏览器在我们没有设置样式时,会默认个页面设置较为合适的样式牡丹石这个样式在开发过程中,我们可能用不到,所以可以将其去掉
内联元素的不能设置width和height,可以设置水平方向的内边距,内联元素设置垂直方向的内边距不会影响布局 垂直方向的边框不会影响布局 水平方向的边框会影响布局
内联元素 兄弟元素相邻的外边距不会重叠,会相加
如果需要修改内联元素的width等属性,需要将内联元素转换成块元素 display :block(块元素) inline(内联元素) inline-block可以讲一个元素设置为基友行内元素的特征,也有块元素的特征 (既可以设置宽高,也不会独占一行) none 使用none 设置的元素,不会再浏览器中出现,也不会占据浏览器的位置
visibilty :visible(默认样式,会显示) hidden(隐藏) 使用visibilty设置为hidden 的元素,不会在页面中显示,但是其位置依然保存
子元素默认存在父元素的内容区的,但是当子元素的宽度或高度超出了父元素的内容区,会溢出。父元素默认将移除内容显示在外面,不需要的时候,可以通过overflow属性进行设置。默认样式visible ,hidden(隐藏) scroll(修剪,加一个滚动条。但是该属性无论内容是否溢出,都会加水平和垂直的滚动条) auto(会根据需要添加滚动条,水平溢出则添加水平滚动条,垂直溢出就添加垂直滚动条,不溢出则不添加)
块元素在文档流中独占一行,自上向下排列。默认宽度是父元素的100%。块元素在文档流中的高度会自动被子元素撑开。
内联元素在文档流中只占自身的大小,自左向右排列。如果一行中不足以放下所有的内联元素,则会跳到下一行,继续自左向右。内联元素的宽度和高度默认被内容撑开
当元素的宽度和高度为auto时,此时指定内边距不会影响可见框大小,而是会自动修改高度和宽度,以适应内边距
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了