当前位置: 首页 > news >正文

盒子模型

1.1看透网页布局的本质

1.2盒子模型的组成部分 

css盒子模型本质是一个盒子,封装周围的html元素,它包括边框 外边距 内边距和实际内容。

  •  padding:盒子与内容间的距离
  • margin:盒子与盒子间的距离

1.3border边框 

 1.border-width 边框粗细  

2.boder-style边框样式

代码 

效果如图 

3.border-color边框颜色

4.边框的复合写法 

5.表格细线边框 (boder-collapse)

collapse:倒塌 ,边界倒塌,所以合在一起了

原本都是1像素的边框,如果分开他们 就是看起来就是两像素了

6.边框会影响盒子实际大小

如图所示,边框左右两侧都会多出10px

二.内边距 

padding属性用于设置内边距,即边框与内容之间的距离。

1.padding各属性

2. padding复合写法

 

 3.padding也会影响盒子大小

盒子的宽度需要加上内白那句还有边框 

所以如果要指定盒子大小不变就需要减去边上下左右的内边距 

4.padding撑开盒子用于保持边距相同

 5.padding不会超出盒子的情况

加上padding之后

可以看到在没有指定宽度的情况下,padding不会撑开盒子大小 

指定宽度 

可以看到图片此刻已经溢出了 ,已经超过了屏幕所能容纳的最大宽度了

案例2 

 如图p的宽度还是div的大小,不会超出它的宽度

  

三.外边距margin

margin属性用于设置外边距,即控制盒子和盒子之间的距离。

1. 从第一个的视角

2.从第二个的视角

3.margin的复合写法

margin的复合写法与padding一样

4.外边距典型应用 

1.块级盒子水平居中

  

2.行内元素和行内块元素水平居中 

再使用之前的技巧:让行高等于盒子宽度,既可以实现水平居中对齐了 

 1.行内元素水平居中对齐

  

2.行内块元素水平居中对齐        

5.外边距合并问题

1.嵌套元素垂直外边距塌陷

看下面这代码,把两个块级元素嵌套在一起,父级元素的上外边距设置为100px,子级元素设置为50px,为何子块元素没有向下移动50px

 

如图看布局只有100px

2.解决方案

1.父元素定义上边框

就我猜测啊是两个块级元素的起点重合在一起了,所以margin-top的时候以为是一体的,最终使得只有大的边距起效果,所以可以给父盒子添加外边框,使得可以区分 

 2.给个内边距

给父亲素一个padding也就把它和儿子隔开了

 

3.overflow:hidden(最佳)

 

5.清除内外边距

网页元素很多带有默认的内外边距,而且不同浏览器默认的也不一致,因此我们在布局前,首先要清楚下网页元素的内外边距。

例如谷歌浏览器的外边距都是默认为8的 

 

1.通配符选择器

通配符选择器优先级最低,先拿他把所有边距都给清了 

 

2.案例 

我们知道ul初始就有40的内边距

现在来清除它

 

http://www.xdnf.cn/news/187705.html

相关文章:

  • 图像处理篇---信号与系统的应用
  • Golang|分布式索引架构
  • DDD(领域驱动设计)详解
  • 【C++类与对象高频面试问题总结2】
  • 在VS2022中使用Lua与c交互(二)
  • 读书笔记--华为从偶然到必然之创新与技术开发阅读有感
  • 交换机配置DHCP
  • 使用python实现自动化拉取压缩包并处理流程
  • 深入理解CSS3:Flex/Grid布局、动画与媒体查询实战指南
  • Python初学 有差异的知识点总结(一)
  • 构建“云中”高并发:12306技术改造的系统性启示
  • mac 基于Docker安装minio
  • Flutter介绍、Flutter Windows Android 环境搭建 真机调试
  • ETL架构、数据建模及性能优化实践
  • GPU 架构入门笔记
  • git pull报错error: cannot lock ref ‘refs/remotes/origin/feature/xxx
  • 【C语言】初阶算法相关习题(二)
  • Python-librosa库提取音频数据的MFCC特征
  • 线下CPG零售的核心:POG与销量的循环优化
  • 浅谈PCB传输线(一)
  • docker安装Canal1.1.5,MySQL5.7踩坑
  • Ubuntu中C++项目安装二次规划库——qpOASES 库
  • 论文阅读_Search-R1_大模型+搜索引擎
  • 怎么样才能在idea中写入spark程序
  • 无人船 | 图解基于LQR控制的路径跟踪算法(以全驱动无人艇WAMV为例)
  • 仙宫云ComfyUI —【Wan2.1】AI视频生成部署
  • 【计算机视觉】TorchVision 深度解析:从核心功能到实战应用 ——PyTorch 官方计算机视觉库的全面指南
  • VINS-FUSION:跑通手机录制数据
  • EasyRTC嵌入式音视频通信SDK智能安防与监控系统的全方位升级解决方案
  • 杰理-安卓通过map获取时间的时候,部分手机切换sbc和aac时候单耳无声音