块级元素和行内元素的区别
块级元素和行内元素是布局最基本的两种元素,常见的块级元素有div,p,form,ul,ol,li等,常见的行内元素有span,strong,em等.
块级元素和行内元素有什么区别呢?
块级元素会独占一行,默认情况下,其宽度自动填满父元素宽度,行内元素不会独占一行,相邻的行内元素会排列在同一行里,直到一行排不下才会换行,其宽度随元素内容变化而变化.
块级元素可以设置width,height属性,行内元素设置width,height属性无效.块级元素即使设置了宽度,仍然是独占一行.
块级元素可以设置margin和padding属性,行内元素的argin和padding属性很奇怪,水平方向margin-left,margin-right, padding-left,padding-right都产生边距效果,但是竖直方向的margin-top,margin-bottom,padding-top,padding-bottom却不会产生边距效果.
块级元素和行内元素的CSS相关属性是display,其中块级元素对应于display:block,行内元素对应于display:inline.我们可以修改dispaly属性切换块级元素和行内元素
--------------------------
display:inline-block它是行内的块级元素,它拥有块级元素的特点,可以设置长宽,可以设置margin和padding属性,但是却不是独占一行,它的宽度并不占满父元素,而是和行内元素一样,可以和其他行内元素在同一行里.
IE6和IE7是不支持display:inline-block的,但是可以触发它的hasLayout
如下图:
IE6和IE7是不支持display:inline-block的,但是可以触发它的hasLayout
将标签p改为span可以触发行内元素hasLayout就可以模拟display:inline-block的效果,span在IE6/7是底对齐,在IE8/F
irefox是顶对齐,所以需要*vertical-align:-10px;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构