盒子模型、浮动、定位

简介: 盒子模型、浮动、定位

什么是标准流?


就是标签的排列顺序,在标准流中,


  • 块级元素:div,占一行
  • 行内元素:span,有多少占多少 ,上一个接下一个


7534d9cbbb236dc569333f289712443d.png


问:行内元素能变成块级元素吗?


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.xian{
    display:block;
}


效果展示:


234169210f0e6edadb246db882fcdf94.png


盒子模型


每个标签就像一个盒子


d74d9142fca6f4c3a9987ecefda80af5.png


  • Margin(外边距) - 清除边框外的区域,外边距是透明的。
  • Border(边框) - 围绕在内边距和内容外的边框。
  • Padding(内边距) - 清除内容周围的区域,内边距是透明的。
  • Content(内容) - 盒子的内容,显示文本和图像。


实战


①、设置边框


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.menu {
    /*第一种写法:单独设置样式*/
    border-width: 3px;
    border-color: red;
    border-style: solid;
    /*第二种写法:一起设置样式。注意:用空格隔开,不要用逗号*/
    border: 3px solid red;
}


效果展示:


caf03a3f789929408d87847514364ec8.png


②、设置页边距


问:如果两个标签同时设置了页边距,那这两个标签之间的页边距是它们的和吗?


32c8e24977de61cc6eb4430e33c5b3f4.png


<body>
    <div class="menu">栏目一</div>
    <span class="menu xian">栏目二</span>
    <span class="menu">栏目三</span>
    <span class="title">这是<span>一</span>条新闻标题</span>
</body>
.menu {
    border: 3px solid red;   //边框
    margin: 5px;              //页边距
}
.xian {
    display: block;
    margin-top: 30px;
}


结果:会选择最大的那个页边距


071411cba95d823bb2c9a25d7b36da9d.png


③、设置内容


width:60px;   //块宽度
height:100px;   //高度
line-height:50px;     //文字位置(让文本垂直居中)


效果展示:


f9c5a27ee6f93b87a09638cf13840cad.png


浮动:float


<body>
    <div class="menu">栏目一</div>
    <div class="menu xian">栏目二</div>
    <div class="menu">栏目三</div>
    <div class="title">这是<span>一</span>条新闻标题</div>
</body>
.menu {
    border: 3px solid red;
    float: left;     //添加左浮动
    //clear:left(清除浮动)
}


展示效果:


884be380e92446f072f42c1aac1bddb9.png


定位:position


position 属性的五个值:


  • static:没有定位,遵循正常的文档流对象
  • relative:相对定位,相对于原来的位置偏离了多少
  • fixed:元素的位置相对于浏览器窗口是固定位置。
  • absolute:绝对定位的元素的位置相对于最近的已定位父元素,如果元素没有已定位的父元素,那么它的位置相对于<html>
  • sticky:定位的元素和其他元素重叠


相对定位:


8829a296e1734c50313a33fe4d9592cf.png

相关文章
|
监控 网络协议 数据安全/隐私保护
​邮件发送失败DMARC报错问题排查解决有什么理想方法
在邮件营销中,DMARC(域消息验证)报错常见。DMARC基于SPF和DKIM,指定如何处理未认证邮件。排查DMARC问题需检查SPF记录,验证DKIM签名,配置DMARC策略,使用AOKSend发送测试邮件。理想的解决方法包括:定期更新DNS记录,使用专业邮件服务如AOKSend简化配置,监控DMARC报告,逐步加强DMARC策略,并对员工进行培训。这将提高邮件发送成功率和安全性。
|
缓存 NoSQL 关系型数据库
mysql和缓存一致性问题
本文介绍了五种常见的MySQL与Redis数据同步方法:1. 双写一致性,2. 延迟双删策略,3. 订阅发布模式(使用消息队列),4. 基于事件的缓存更新,5. 缓存预热。每种方法的实现步骤、优缺点均有详细说明。
484 3
|
数据采集 Java Python
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
在信息化时代,实时数据的获取对体育赛事爱好者、数据分析师和投注行业至关重要。本文介绍了如何使用Python的`ThreadPoolExecutor`结合代理IP和请求头设置,高效稳定地抓取五大足球联赛的实时比赛信息。通过多线程并发处理,解决了抓取效率低、请求限制等问题,提供了详细的代码示例和解析方法。
378 0
如何用Python同时抓取多个网页:深入ThreadPoolExecutor
|
前端开发 流计算
css:text-decoration给文字增加上划线、删除线、下划线
css:text-decoration给文字增加上划线、删除线、下划线
3244 0
css:text-decoration给文字增加上划线、删除线、下划线
|
图形学 机器学习/深度学习 人工智能
颠覆传统游戏开发,解锁未来娱乐新纪元:深度解析如何运用Unity引擎结合机器学习技术,打造具备自我进化能力的智能游戏角色,彻底改变你的游戏体验——从基础设置到高级应用全面指南
【8月更文挑战第31天】本文探讨了如何在Unity中利用机器学习增强游戏智能。作为领先的游戏开发引擎,Unity通过ML-Agents Toolkit等工具支持AI代理的强化学习训练,使游戏角色能自主学习完成任务。文章提供了一个迷宫游戏示例及其C#脚本,展示了环境观察、动作响应及奖励机制的设计,并介绍了如何设置训练流程。此外,还提到了Unity与其他机器学习框架(如TensorFlow和PyTorch)的集成,以实现更复杂的游戏玩法。通过这些技术,游戏的智能化程度得以显著提升,为玩家带来更丰富的体验。
497 1
|
缓存 前端开发 CDN
静态资源缓存过期时间的设置
【8月更文挑战第18天】静态资源缓存过期时间的设置
484 1
|
算法 大数据 数据处理
【软件设计师备考 专题 】IO控制方式(中断系统、DMA、IO处理机方式)
【软件设计师备考 专题 】IO控制方式(中断系统、DMA、IO处理机方式)
630 1
|
缓存 C++ Windows
面向 C++ 的现代 CMake 教程(一)(2)
面向 C++ 的现代 CMake 教程(一)
580 0
|
Oracle 关系型数据库 MySQL
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
Flink CDC产品常见问题之使用cdc-Oracle连接器报错如何解决
|
机器学习/深度学习 人工智能 自然语言处理
ChatGPT的应用场景和局限性,以及发展前景
ChatGPT的应用场景和局限性,以及发展前景
670 0