css布局中关于 块状元素和行内元素的区分

2023-11-07

   这两天在准备实习的面试和笔试,准备复习一下这些基础的概念,避免自己处于一种仅脑袋理解嘴巴不能表述出来的状态。

   块状元素和行内元素的概念是在css页面布局这个地方出现。主要是将html标签按照一定的特性分成2类:块状元素和行内元素(内联元素)。

   首先概念上理解一下:

   块状元素:

  块状元素(Block element),字面理解就是一个方块嘛,它一般是其它元素的容器元素,可以容纳块状元素和行内元素,它默认是不会和其它元素同一行的,即相当于两个块状元素写一块是垂直布局的。最常用块状元素是div和p。

<html>
	<head>
		<title>DOM</title>
		<!-- Date: 2015-03-12 –>                         
	</head>
	<style> 
	.box01{
		width:30px;
		height:30px;
		background-color:#293344;
	}
	.box02{
		width:50px;
		height:50px;
		background-color:#993889;
	}
	.box03{
		width:80px;
		height:80px;
		background-color:#652399;
	}
	</style>
	<body>
		<div class="box01"></div>
		<div class="box02"></div>
		<div class="box03"></div>
	</body>
</html>
css样式只是设计了div的宽度和高度以及背景颜色。
效果如下:

image

     行内元素:

     行内元素(Inline element)又称内联元素,个人觉得行内元素能让人更通俗一些去理解。行内元素一般基于语义元素,它只能够容纳文本以及其它的行内元素。常见的行内元素有 超链接a、span、图片元素img(记得图片是行内元素,我刚开始总会将img记成块状元素,可能是因为图片一大块的这样会让我混淆,但是img是属于行内替换元素(Replace inline element),属于inline element类的。

    行内元素跟块状元素的差异基本是,行内元素并不从新的一行开始,水平方向会一个个接着。每个块状元素会从新的一行开始。

       <body>
		<img src="pic01.png" style="border:1px solid black;">
		<a href="http://www.cnblogs.com/magicgua">www.cnblogs.com/magicgua</a>
		<input type="text" />
	</body>
效果如下:
你们快看哪!它们真的没有换行!

image 

    强调一下:当css对内联元素定义这两属性中的一种之后,这些行内元素会具有块状元素属性!例如会重新的一行开始,就像后面跟了一个换行符一样。

    1、display:block;

    2、float:left/right;

小例子:

 

<style>
		img{
			display: block;
			width: 300px;
			height:300px;
		}
		a{
			display: block;
			border:2px solid red;
			width: 300px;
			height:100px;
		}
</style>
	</head>
	<body>
		<img src="pic01.png" style="border:1px solid black;">
		<a href="http://www.cnblogs.com/magicgua">www.cnblogs.com/magicgua</a>
		<input type="text" />
	</body>

 

效果如下

image

当我对img还有a添加display: block;之后,它们就像块状元素一样,从新的一行开始了,而且具有了width,heigh属性!自己去试试,如果仅仅是行内元素,你不去设置它为display: block; 是没有办法设置它的宽高的,它显示的宽度和告诉就是图片被保存的高度和宽度,就像对于img来说是比较不方便的。所以,这是个很好用的属性。

转载于:https://www.cnblogs.com/magicgua/p/4338303.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

css布局中关于 块状元素和行内元素的区分 的相关文章

  • iTab浏览器插件安装教程

    iTab浏览器插件 iTab是一个好看好用的自定义卡片式浏览器新标签页扩展 安装iTab标签页扩展后 您将告别呆板无趣的原生标签页 享受iTab标签页为您带来的个性化新体验 离线资源下载 iTab资源 安装教程 IE 浏览器 1 打开浏览器
  • 百度文本内容审核

    百度提供了免费的文本内容审核 响应时间在1秒左右 第一步 在百度开发账号中创建应用 获取配置信息 百度图片审核配置信息 public class BaiduSensitiveConfig 1 app id public static fin
  • 关于BatchNorm,我们需要了解什么(一)

    一 前言 准备写一个系列的文章 关于BatchNorm 本文的主要内容是对BN技术做一个汇总 默认读者已经了解BN层的主要工作原理 理解BN算法中每个参数的含义以及在训练和推理过程中的算法原理 1 BN存在的问题以及在必须使用BN的时候 我

随机推荐

  • powerDesigner反向生成数据建模图

    添加sql脚本文件 The file has been successfully reverse engineered 保存dpm文件 生成报告 建议标准模式 html就行
  • php文件注入思路

    题目描述 打开题目给定url 发现有一个文件上传按钮 猜测可能是需要上传php文件对服务器进行查看 解题步骤 1 上传一个文档文档 提示无法上传 2 上传一张jpg图像 发现给定了图像存储的路径 3 于是使用浏览器权限绕过的方式 上传php
  • Android7.1.2修改以太网静态设置

    如何设置以太网有线网络静态配置 从源码看设置以太网配置调用的是EthernetManager的setConfiguration方法 所以我们就只需要创建IpConfiguration这个实例 他的构造方法传入值是 最终配置的参数就是Stat
  • 如何系统学习k8s?

    1 理解基本概念 Kubernetes 有很多复杂的概念 例如 Pod Deployment Service Ingress 等 了解这些基本概念是系统学习 k8s 的第一步 一些有用的资源包括 Kubernetes官方文档 k8s io网
  • Failed to deserialize payload. Is the byte array a result of corresponding serialization for Default

    这是java redis反序列化问题 Cannot deserialize nested exception is org springframework core serializer support SerializationFaile
  • 怎么注册自媒体账号?技巧分享

    自媒体行业的快速发展 相信大家都有耳闻 至于自媒体应该如何有效地运营 相信大家就纷纷摸不着头脑了那么新手如何做自媒体呢 我归纳分为这几个步骤 一 自媒体账号定位 在做自媒体之前 一定需要做好定位 比如我这个自媒体开通了要拿来做什么 比如给人
  • 强大的Source Insight查找操作和代码查看

    系列文章 一 Source Insight 简介 常用设置和常用的快捷键 二 Source Insight 工程操作 三 Source Insight 窗口介绍 四 强大的Source Insight查找操作和代码查看 五 Source I
  • Logcat 的常用命令说明

    个人认为有一下几个常用命令 adb logcat c 清除所有以前的日志 adb logcat d 这个命令是在时间上倒过来用的 就是你先操作 然后敲这个命令 打出来的log就是你刚操作那段时间的log 而且自动退出log模式 adb lo
  • Vue PostCss插件——autoprefixer,自动补全css浏览器前缀

    Autoprefixer是一款基于PostCSS插件 用于解析CSS并使用Can I Use中的值向CSS规则添加供应商前缀 它是 Google 推荐的 并在Twitter和阿里巴巴中使用 可以实现css3代码自动补全 也可以运用到sass
  • 实例:vmem_disk驱动-->vmem_disk驱动模块的加载与卸载(2)

    支持 制造请求 请求队列 static void setup device struct vmem disk dev dev int which memset dev 0 sizeof struct vmem disk dev dev gt
  • 达蒙DM数据库使用经验

    DM表 字段注释 注 dm数据库无法在建表的同时为字段名添加注释 为表添加注释 comment on table 库名 表名 is 表注释 为表字段添加注释 comment on column 库名 表名 列名 is 列注释 DM查询错误
  • 如何搭建一个CRM系统

    搭建一个客户关系管理系统 CRM 需要以下几个步骤 定义需求 明确您对 CRM 系统的要求 以便确定它应该具有哪些功能和特性 选择技术 根据您的需求 选择合适的技术平台 例如使用自主开发 购买现成软件或使用云 CRM 服务 数据收集 收集所
  • QT中如何在主窗口中添加子窗口

    1 方法 原理其实很简单 和在窗口上动态 代码的形式 添加控件的方法一样 但需要设置一下子窗口的属性 在子窗口构造函数中添加代码 setWindowFlags Qt FramelessWindowHint 作用 隐藏子窗口的标题栏和边框 如
  • 统计各专业学生人数

    题目描述 学生表 专业表 SELECT dept name ifnull z studen cou 0 AS 人数 FROM SELECT dept id COUNT AS cou FROM z studen GROUP BY dept i
  • 一种设置python函数执行超时时间

    问题来源 写该文章的缘由是因为最近回答CSDN用户一个关于函数超时的问题 当时用户提问 最近想用python实现如下的一个功能 即设置函数的超时时间 当超过这个时间后函数退回到父函数而不会引发异常或导致整个程序结束 当时用户还贴出了另一篇文
  • Python 朴素贝叶斯(Naive Bayes)分类

    Na ve Bayes 分类的核心是计算条件概率P y x 其中y为类别 x为特征向量 其意义是在x样本出现时 它被划分为y类的可能性 概率 通过计算不同分类下的概率 进而把样本划分到概率最大的一类 根据条件概率的计算公式可以得到 P y
  • oracle_11 linux客户端安装说明以及如何添加sqlldr命令

    1 安装文件准备 oracle instantclient11 2 basic 11 2 0 2 0 x86 64 rpm oracle instantclient11 2 devel 11 2 0 2 0 x86 64 rpm oracl
  • Th4.2:类模板的概念、类模板的定义和使用之详述

    本小节回顾的知识点分别是类模板的概念 类模板的定义和使用 今天总结的知识分为以下4个点 1 概述 2 类模板定义 3 类模板的成员函数 4 非类型模板参数 1 概述 类模板 就是包含待指定数据类型的类 这个待指定的数据类型就是类模板的模板参
  • Centos7安装Python3的方法(亲测高效)

    Centos7下安装Python3的方法 由于centos7原本就安装了Python2 而且这个Python2不能被删除 因为有很多系统命令 比如yum都要用到 root VM 105 217 centos Python 3 6 2 pyt
  • css布局中关于 块状元素和行内元素的区分

    这两天在准备实习的面试和笔试 准备复习一下这些基础的概念 避免自己处于一种仅脑袋理解嘴巴不能表述出来的状态 块状元素和行内元素的概念是在css页面布局这个地方出现 主要是将html标签按照一定的特性分成2类 块状元素和行内元素 内联元素 首