Python HTML和CSS 7:盒子的类型:块元素、内联元素、内联块元素

简介: Python HTML和CSS 7:盒子的类型:块元素、内联元素、内联块元素

元素就是标签,布局中常用的有三种标签,块元素、内联元素、内联块元素,了解这三种元素的特性,才能熟练的进行页面布局。


一、块元素



  • 1.1、块元素,也可以称为行元素,布局中常用的标签如:div、p、ul、li、h1~h6、dl、dt、dd等等都是块元素,它在布局中的行为:


  • 支持全部的样式
  • 如果没有设置宽度,默认的宽度为父级宽度100%
  • 盒子占据一行、即使设置了宽度


  • 1.2、行为的举例
  • <1>、如果没有设置宽度,默认的宽度为父级宽度100%:占据一行


<div class="box1"> 我第1个块元素</div>


  • <2>、盒子占据一行、即使设置了宽度


image.png

<div class="box1"> 我第1个块元素</div>
<div class="box2"> 我第2个块元素</div>


二、内联元素



  • 2.1、内联元素,也可以称为行内元素,布局中常用的标签如:a、span、em、b、strong、i等等都是内联元素,它们在布局中的行为:
  • 支持部分样式(不支持宽、高、margin上下、padding上下)
  • 宽高由内容决定
  • 盒子并在一行
  • 代码换行,盒子之间会产生间距
  • 子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式
  • 2.2、行为的举例
  • <1>、支持部分样式:不支持宽、高、margin上下


image.png

  • <2>、盒子并在一行:由上图可知
  • <3>、代码换行,盒子之间会产生间距,如下


image.png



解决内联元素间隙的方法

解决办法一:代码不去换行,挨着写,产生的间距就会取消掉,如下


image.png


解决办法二::将内联元素的父级设置font-size为0,内联元素自身再设置font-size


  • <4>、子元素是内联元素,父元素可以用text-align属性设置子元素水平对齐方式


image.png


三、内联块元素



  • 3.1、内联块元素,也叫行内块元素,是新增的元素类型,现有元素没有归于此类别的,img和input元素的行为类似这种元素,但是也归类于内联元素,我们可以用display属性将块元素或者内联元素转化成这种元素。它们在布局中表现的行为:
  • 支持全部样式
  • 如果没有设置宽高,宽高由内容决定
  • 盒子并在一行
  • 代码换行,盒子会产生间距
  • 子元素是内联块元素,父元素可以用text-align属性设置子元素水平对齐方式。


提示:这三种元素(块元素、内联元素、内联块元素),可以通过 display 属性来相互转化,不过实际开发中,块元素用得比较多,所以我们经常把内联元素转化为块元素,少量转化为内联块,而要使用内联元素时,直接使用内联元素,而不用块元素转化了。


  • 3.2、display属性:是用来设置元素的类型及隐藏的,常用的属性有:
  • none 元素隐藏且不占位置
  • block 元素以块元素显示
  • inline 元素以内联元素显示
  • inline-block 元素以内联块元素显示
  • 3.3、以下面一个例子为例来使用一下display属性以及上面的知识,效果图如下


image.png

  • <1>、分析:这是一个大盒子包着一些小盒子,小盒子的颜色和边框都是一样,又是一行是同时也有宽度,所以是 内联块标签。
  • <2>、内体的代码以及注释如下


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>display属性的使用</title>
    <style type="text/css">
       .menu{
           width: 694px;
           height: 50px;
           font-size: 0px;
           /*background-color: red;*/
       }
       .menu a{
           width: 98px;
           height: 48px;
           /* 改变块标签为内联块标签 */
           display: inline-block;
           background-color: white;
           /* 边框的设置*/
           border: 1px solid gold;
           /* 字体大小的设置 */
           font-size: 16px;
           /* margin 左边框的合并 */
           margin-left: -1px;
           /* 字体居中 */
           text-align: center;
           /* 行高的设置让文字垂直居中 */
           line-height: 48px;
           /* 去除下划线 */
           text-decoration: none;
           /* 字体格式的设置 */
           font-family: "Microsoft YaHei";
           /* 字体颜色的设置 */
           color: pink;
         }
         /* 伪类的设置:鼠标放上去元素的变化 */
         .menu a:hover{
            color: white;
            background-color: gold;
         }
    </style>
</head>
<body>
    <div class="menu">
         <a>首页</a>
         <a>公司简介</a>
         <a>解决方案</a>
         <a>公司新闻</a>
         <a>行业动态</a>
         <a>招贤纳才</a>
         <a>联系我们</a>
    </div>
</body>
</html>


目录
相关文章
|
8月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
486 2
|
8月前
|
前端开发 算法 Java
【CSS】前端三大件之一,如何学好?从基本用法开始吧!(四):元素盒子模型;详细分析边框属性、盒子外边距
盒模型 盒模型: 所谓盒模型,就是浏览器为页面中的每个HTML元素生成的矩形盒子。 这些盒子们都要按照可见板式模型在页面上排布。 可见的板式模型主要由三个属性控制:position 属性、display 属性和 float属性。 position属性控制页面上元素间的位置关系。 display属性控制元素是堆叠、并排或者不在页面上显示。 float属性提供控制的方法,以便于把元素组成成多栏布局。 盒模型讲解: 在默认的情况下,每个盒子的边框是不可见的,背景也是透明的。 所以我们 不能直接的看到页面中的盒
1299 1
|
9月前
|
IDE 开发工具 开发者
Python类型注解:提升代码可读性与健壮性
Python类型注解:提升代码可读性与健壮性
449 102
|
索引 Python
Python的变量和简单类型
本文介绍了Python中变量命名规则、常用变量类型及字符串操作。变量命名需遵循字母、数字和下划线组合,不能以数字开头且不可与关键字冲突。字符串支持单引号、双引号或三引号定义,涵盖基本输出、转义字符、索引、拼接等操作。此外,还详细解析了字符串方法如`islower()`、`upper()`、`count()`等,帮助理解字符串处理技巧。
358 15
|
10月前
|
安全 JavaScript Java
Python中None与NoneType的真相:从单例对象到类型系统的深度解析
本文通过10个真实场景,深入解析Python中表示“空值”的None与NoneType。从单例模式、函数返回值,到类型注解、性能优化,全面揭示None在语言设计与实际编程中的核心作用,帮助开发者正确高效地处理“无值”状态,写出更健壮、清晰的Python代码。
949 3
|
10月前
|
缓存 数据可视化 Linux
Python文件/目录比较实战:排除特定类型的实用技巧
本文通过四个实战案例,详解如何使用Python比较目录差异并灵活排除特定文件,涵盖基础比较、大文件处理、跨平台适配与可视化报告生成,助力开发者高效完成目录同步与数据校验任务。
326 0
|
Python
Python技术解析:了解数字类型及数据类型转换的方法。
在Python的世界里,数字并不只是简单的数学符号,他们更多的是一种生动有趣的语言,用来表达我们的思维和创意。希望你从这个小小的讲解中学到了有趣的内容,用Python的魔法揭示数字的奥秘。
285 26
|
10月前
|
IDE API 开发工具
Python类型注解:让代码“开口说话”的隐形助手
Python类型注解为动态语言增添类型信息,提升代码可读性与健壮性。通过变量、函数参数及返回值的类型标注,配合工具如mypy、IDE智能提示,可提前发现类型错误,降低调试与协作成本。本文详解类型注解的实战技巧、生态支持及最佳实践,助你写出更高质量的Python代码。
469 0
|
人工智能 安全 IDE
Python 的类型安全是如何实现的?
本文探讨了 Python 的类型安全实现方式。从 3.5 版本起,Python 引入类型提示(Type Hints),结合静态检查工具(如 mypy)和运行时验证库(如 pydantic),增强类型安全性。类型提示仅用于开发阶段的静态分析,不影响运行时行为,支持渐进式类型化,保留动态语言灵活性。泛型机制进一步提升通用代码的类型安全性。总结而言,Python 的类型系统是动态且可选的,兼顾灵活性与安全性,符合“显式优于隐式”的设计哲学。
311 2
|
Rust JavaScript 前端开发
[oeasy]python075_什么是_动态类型_静态类型_强类型_弱类型_编译_运行
本文探讨了编程语言中的动态类型与静态类型、强类型与弱类型的概念。通过实例分析,如Python允许变量类型动态变化(如`age`从整型变为字符串),而C语言一旦声明变量类型则不可更改,体现了动态与静态类型的差异。此外,文章还对比了强类型(如Python,不允许隐式类型转换)和弱类型(如JavaScript,支持自动类型转换)的特点。最后总结指出,Python属于动态类型、强类型语言,对初学者友好但需注意类型混淆,并预告下期内容及提供学习资源链接。
415 21

推荐镜像

更多