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月前
html中div内容居中的方法使用弹性盒子居中
html中div内容居中的方法使用弹性盒子居中
64 0
|
8月前
|
前端开发
玩转CSS盒子之 三角形盒子
玩转CSS盒子之 三角形盒子
75 0
|
2月前
|
前端开发 JavaScript UED
|
3月前
|
前端开发 UED
如何使用css给一个盒子加上好看的hover阴影效果
如何使用css给一个盒子加上好看的hover阴影效果
109 1
|
3月前
|
前端开发
css 块元素、行内元素、行内块元素相互转换
css 块元素、行内元素、行内块元素相互转换
267 0
|
3月前
|
前端开发 容器
CSS弹性盒子知识点
CSS弹性盒子知识点
|
4月前
|
设计模式 移动开发 前端开发
CSS内联样式的使用,吐血整理
CSS内联样式的使用,吐血整理
54 6
|
5月前
|
数据采集 前端开发 JavaScript
CSS与Python爬虫
【8月更文挑战第9天】
41 8
|
6月前
|
前端开发 容器
你不知道的css——1. 外在盒子、内在盒子,宽度和高度的计算,box-sizing属性
你不知道的css——1. 外在盒子、内在盒子,宽度和高度的计算,box-sizing属性
39 3
你不知道的css——1. 外在盒子、内在盒子,宽度和高度的计算,box-sizing属性
|
7月前
|
前端开发 容器
CSS布局基础:块级元素、行内元素与行内块元素详解
CSS布局基础:块级元素、行内元素与行内块元素详解
312 0
下一篇
开通oss服务