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

知识笔记(九十七)———什么是实体符???

在HTML中,有些字符无法直接在文本中输入,因为它们是HTML语言的保留字符,如小于号(<)、大于号(>)、&符号(&)等。为了将这些字符显示在网页上,需要使用实体符(Entity)来代替它们。

实体符以&开头,以;结尾。例如,<代表小于号(<),>代表大于号(>),&代表&符号, 代表一个非断行空格。

这些实体符可以在HTML文档中的任何位置使用。例如,在链接标签中使用小于号和大于号的实体符:

<a href="http://www.example.com/?id=1&amp;name=hello">点击跳转</a>

HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格(&nbsp;)是常规空格的宽度,可运行于所有主流浏览器。其他几种空格(&ensp; &emsp; &thinsp; &zwnj;&zwj;)在不同浏览器中宽度各异。

&nbsp;

它叫不换行空格,全称No-Break Space,它是最常见和我们使用最多的空格,大多数的人可能只接触了&nbsp;,它是按下space键产生的空格。在HTML中,如果你用空格键产生此空格,空格是不会累加的(只算1个)。要使用html实体表示才可累加,该空格占据宽度受字体影响明显而强烈。

&ensp;

它叫&ldquo;半角空格&rdquo;,全称是En Space,en是字体排印学的计量单位,为em宽度的一半。根据定义,它等同于字体度的一半(如16px字体中就是8px)。名义上是小写字母n的宽度。此空格传承空格家族一贯的特性:透明的,此空格有个相当稳健的特性,就是其 占据的宽度正好是1/2个中文宽度,而且基本上不受字体影响。

&emsp;

它叫&ldquo;全角空格&rdquo;,全称是Em Space,em是字体排印学的计量单位,相当于当前指定的点数。例如,1 em在16px的字体中就是16px。此空格也传承空格家族一贯的特性:透明的,此空格也有个相当稳健的特性,就是其 占据的宽度正好是1个中文宽度,而且基本上不受字体影响。

&thinsp;

它叫窄空格,全称是Thin Space。我们不妨称之为&ldquo;瘦弱空格&rdquo;,就是该空格长得比较瘦弱,身体单薄,占据的宽度比较小。它是em之六分之一宽。

&zwnj;

它叫零宽不连字,全称是Zero Width Non Joiner,简称&ldquo;ZWNJ&rdquo;,是一个不打印字符,放在电子文本的两个字符之间,抑制本来会发生的连字,而是以这两个字符原本的字形来绘制。Unicode中的零宽不连字字符映射为&ldquo;&rdquo;(zero width non-joiner,U+200C),HTML字符值引用为: &zwnj;

&zwj;

它叫零宽连字,全称是Zero Width Joiner,简称&ldquo;ZWJ&rdquo;,是一个不打印字符,放在某些需要复杂排版语言(如阿拉伯语、印地语)的两个字符之间,使得这两个本不会发生连字的字符产生了连字效果。零宽连字符的Unicode码位是U+200D (HTML: &zwj; &zwj;)。

此外,浏览器还会把以下字符当作空白进行解析:空格(&#x0020;)、制表位(&#x0009;)、换行(&#x000A;)和回车(&#x000D;)还有(&#12288;)等等。

在上述示例中,&用于代替&符号,避免浏览器将其解释为HTML语言的保留字符。

实体符是HTML语言中非常重要的一部分,可以帮助我们在网页中正确地显示各种特殊字符和符号。

相关文章:

  • 【算法专题】动态规划之回文子串问题
  • c#定义特性,通过反射获取特性
  • 基于SSM的网络办公系统(有报告)。Javaee项目。ssm项目。
  • 探索Gin框架:快速构建高性能的Golang Web应用
  • Flutter App 生命周期观察监听
  • 爬虫(一)
  • SpringBoot项目配置SSL后,WebSocket连接失败的解决方案
  • FIR数字滤波器设计
  • 03 Redis之命令(基本命令+Key命令+String型Value命令与应用场景)
  • STM32+ESP8266 实现物联网设备节点
  • 使用IntelliJ IDEA快速搭建springboot 基础模板项目
  • 代码随想录算法刷题训练营day17
  • Windows11 鼠标拖动文件到CMD控制终端窗口无效,无法显示具体文件路径
  • python sqlite3 线程池封装
  • 【服务器】安装宝塔面板
  • 3.7、@ResponseBody 和 @RestController
  • CentOS 7 防火墙操作
  • C学习-枚举(九)
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • Otto开发初探——微服务依赖管理新利器
  • React的组件模式
  • 持续集成与持续部署宝典Part 2:创建持续集成流水线
  • 搭建gitbook 和 访问权限认证
  • 普通函数和构造函数的区别
  • 前端工程化(Gulp、Webpack)-webpack
  • 前端路由实现-history
  • 让你成为前端,后端或全栈开发程序员的进阶指南,一门学到老的技术
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 昨天1024程序员节,我故意写了个死循环~
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • !!【OpenCV学习】计算两幅图像的重叠区域
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #NOIP 2014# day.2 T2 寻找道路
  • #微信小程序:微信小程序常见的配置传旨
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (LNMP) How To Install Linux, nginx, MySQL, PHP
  • (TipsTricks)用客户端模板精简JavaScript代码
  • (ZT)出版业改革:该死的死,该生的生
  • (大众金融)SQL server面试题(1)-总销售量最少的3个型号的车及其总销售量
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (五)IO流之ByteArrayInput/OutputStream
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (一)u-boot-nand.bin的下载
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • .Family_物联网
  • .Net 路由处理厉害了
  • .Net7 环境安装配置
  • .NET命名规范和开发约定
  • .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验
  • .NET设计模式(8):适配器模式(Adapter Pattern)
  • .skip() 和 .only() 的使用
  • /etc/sudoer文件配置简析
  • @angular/cli项目构建--Dynamic.Form
  • @Autowired和@Resource的区别