空格HTML不同空格的特性与表现形式

html空格  时间:2021-02-27  阅读:()

HTML不同空格的特性与表现形式

当程序员们编写HTML模板的时候会利用空格来充当文字排版最常见的就是在一段文字中插入空格来分隔相对独立的词汇。接下来就来说说html不同空格下的特征和表现形式吧

一.概要

在编写HTML模板时有时候会利用空格来充当文字排版的手段最为常见的情况是在一段文字之间插入空格来分隔相对独立的词汇。但面对这种情况一般是不会直接使用普通空格半角空格 即英文输入法下键盘直接输入的空格 因为当我们期望连续输入几个这样的空格来制造一段空白时

实际最终网页上显

示出的空白大小只有一个空格的大小 因此通常会用来代替半角空格连续输入多个会产生相应数量的空白 。实际上除了外 Unicode还定义了大量特性各异的包含HTML实体形式的空格字符本文要研究的正是这些平时相对较少被注意到的空格以及它们的特性。

二.Unicode中有HTML实体形式的空格

以下是Unicode中有HTML实体形式的空格及其产生的空白的效果

这些空格按特性基本可以分为三类

1.不换行空格

不换行空格只有一种最主要特性是不会被浏览器判断为可以在中间打断这也是被创造出来的主要用途。这里引用一段简短的介绍

is theentityusedto representa non-breakingspace. It isessential lyastandardspace, theprimarydifferencebeingthata browsershould notbreak(orwrap)a l ineof textat thepoint that thisoccupies.

例如 "This isatest fornon-breakingspace"这个句子如果单词之间的空格都使用半角空格并把它置于一个宽度刚好不足的容器中时"space"这个单词会因为宽度不足而单独换行了。

如果想把"breaking"与"space"同时换行这时只需要把"breaking"与"space"之间的半角空格替换为即可

可以看出 "-"这类普通字符仍然会被浏览器认为是单词的分隔点而"breaking"与"space"之间由于有的连接由于不会被打断因而浏览器会认为它们是相连的一个完整单词在位置允许的情况下把它们同时换到下一行。

需要注意的是如果一大段英文文字中的空格都使用那么浏览器就无法正确识别出哪个字符才是单词的开始和结束 因而无论如何使用word-wrap和word-break等控制单词断开或换行的CSS属性最终都很难避免在单词

中间断开单词这也往往不是我们想要的结果。因此如果段落中不同单词之间有大量的连续空格那么这些连续空格的第一个空格最好使用普通的半角空格 以保证单词之间仍有正常的分隔。

2.跟随字体大小产生相应空白的空格

这类空格包含三个空格字符这三个空格都会根据不同的字体大小产生相应的空白大小分别是1/2em1em1/6em有时被设计成1/5em

宽。其空白大小具体表现如下图

由于中文是等宽字体 因此和所产生的空白大小与中文字大小具有明确的比例关系一个等于半个中文字的宽度而一个则是一个中文字的宽度 因此这类空格很适合用于控制排版例如

3.零宽连字控制空格

即 和 这两个空格字符并不会产生空白仅能控制字符之间是否连字这两个字符也是“不打印字符” 或称作“控制字符” 即不会影响打印效果的字符仅作字符特性控制。而所谓的连字是西方字体中常见的现象表示两个单独的字母在相连时可以连接为新的字母的现象。例如在德语中 "f"与"l"之间连写会变成一个新字符整个单词对应的语义也会发生改变或者产生不符合语法的情况。例如

Auflage 编辑 是一个德语复合词 由"auf" 关于 和"lage" 位置两个组成成分构成在德语语法中复合词组成成分的边界不能产生连字 因此"f"和"l"之间不应该连字如果在HTML上直接写入这个单词直接交由浏览器控制则会产生如下的效果

"f"和"l"之间相连了不符合德语的语法规范 因此需要在两个字母之间插入一个强制不连字效果如下

值得注意的是并不是所有的浏览器都对 和 敏感 目前Chrome

44.0.2403.125中这两个字符并不能产生连字或不连字的控制而S a fa r i 8.0.6 中则可以有效控制连字。

最后需要强调的是虽然Unicode中有着各种不同特性的空格可以用于排版但理论上还是不应该用空格来进行排版排版应该是CSS负责

控制的用于排版的空格并不属于内容但却与内容混排在一起实际上相当不利于维护。只有当不便于使用CSS 比如在EML中等特殊情况时才考虑用空格参与排版。

ProfitServer折优惠西班牙vps,荷兰vps,德国vps,5折优惠,不限制流量

profitserver正在对德国vps(法兰克福)、西班牙vps(马德里)、荷兰vps(杜廷赫姆)这3处数据中心内的VPS进行5折优惠促销。所有VPS基于KVM虚拟,纯SSD阵列,自带一个IPv4,不限制流量,在后台支持自定义ISO文件,方便大家折腾!此外还有以下数据中心:俄罗斯(多机房)、捷克、保加利亚、立陶宛、新加坡、美国(洛杉矶、锡考克斯、迈阿密)、瑞士、波兰、乌克兰,VPS和前面的一样性...

ATCLOUD-KVM架构的VPS产品$4.5,杜绝DDoS攻击

ATCLOUD.NET怎么样?ATCLOUD.NET主要提供KVM架构的VPS产品、LXC容器化产品、权威DNS智能解析、域名注册、SSL证书等海外网站建设服务。 其大部分数据中心是由OVH机房提供,其节点包括美国(俄勒冈、弗吉尼亚)、加拿大、英国、法国、德国以及新加坡。 提供超过480Gbps的DDoS高防保护,杜绝DDoS攻击骚扰,比较适合海外建站等业务。官方网站:点击访问ATCLOUD官网活...

创梦云 香港沙田、长沙联通2核1G仅需29元一个月 挂机宝7元一个月

商家介绍:创梦云是来自国内的主机销售商,成立于2018年4月30日,创梦云前期主要从事免备案虚拟主机产品销售,现在将提供5元挂机宝、特惠挂机宝、香港云服务器、美国云服务器、低价挂机宝等产品销售。主打高性价比高稳定性挂机宝、香港云服务器、美国云服务器、香港虚拟主机、美国虚拟主机。官方网站:http://cmy0.vnetdns.com本次促销产品:地区CPU内存硬盘带宽价格购买地址香港特价云服务器1...

html空格为你推荐
怎么在qq空间里添加背景音乐怎么在QQ空间里免费添加背景音乐????吴晓波频道买粉五大知识付费平台有哪些?二叉树遍历写出二叉树的先序遍历、中序遍历、后序遍历。9flash在“属性”对话框中的“Move”后面的框中输入Flash动画文件的绝对路径及文件名,这句话怎么操作?申请证书求高手教下怎么申请证书天天酷跑刷金币如何使用八门神器给天天酷跑刷钻刷金币迅雷云点播账号求一个迅雷云点播vip的账号,只是看的,绝不动任何手脚。淘宝网页显示不正常淘宝网显示不正常发邮件怎么发怎么发邮箱qq等级表谁能告诉我QQ等级列表?
vps服务器 omnis 腾讯云数据库 sub-process 512m内存 搜狗12306抢票助手 中国特价网 双十一秒杀 泉州移动 100m独享 web服务器搭建 东莞idc 智能dns解析 华为k3 lamp什么意思 徐州电信 成都主机托管 阵亡将士纪念日 石家庄服务器 hdchina 更多