HTML空格符号 nbsp; ensp; emsp; 介绍以及实现中文对齐的方法
一:不同空格符合的区别
- 半角的不断行的空白格(推荐使用)
-   半角的空格
-   全角的空格
详细的含义:
:这是我们使用最多的空格,也就是按下space键产生的空格。在HTML中,如果你用空格键产生此空格,空格是不会累加的(只算1个)。要使用html实体表示才可累加。该空格占据宽度受字体影响明显而强烈。在inline-block布局中会搞些小破坏,在两端对齐布局中又是不可少的元素。
 :此空格有个相当稳健的特性,就是其占据的宽度正好是1/2个中文宽度,而且基本上不受字体影响。
  :此空格也有个相当稳健的特性,就是其占据的宽度正好是1个中文宽度,而且基本上不受字体影响。
二:使用场景
对于 和 在一些中文排版对齐方面可以使用,如下html代码:
<ul><li class="li">姓  名:<input type="text" /></li><li class="li">手 机 号:<input type="text" /></li><li class="li">电子邮箱:<input type="text" /></li> </ul>
实现的效果如图所示:
值得注意的是:上面的空白字符中文对齐方法在IE6下不能完全兼容。(现在谁还在兼容IE6呢,所以还是非常有用的。)
三:空格新成员 
大多数编辑器中空格是透明滴,很容易就被删掉;另外,HTML压缩时候,空格也会被删除掉,所以需要转换书写形式。
在web页面上,一般有3种书写:
- 直接,例如搜狗输入法输入“版权” –
©
. - web字符,
©
- charCode表示:
©
而上面的 
,  
就是具有特定名称的web字符。但是,恕我寡闻,我并不清楚全角空格是否有对应& + 关键字
示意,所以,就使用工具转成了charCode字符表示,也就是这里的
 
→ 
→
字符使用技巧:
1. HTML中字符输出使用&#x
配上charCode值;
2. 在JavaScript文件中为防止乱码转义,则是\u
配上charCode值;
3. 而在CSS文件中,如CSS伪元素的content
属性,直接使用\
配上charCode值。
因此,想在HTML/JS/CSS中转义“我”这个汉字,分别是:
我
\u6211
, 如console.log('\u6211');
\6211
, 如.xxx:before { content: '\6211'; }
考虑到直接
这种形式暴露在HTML中,可能会让屏幕阅读器等辅助设备读取,从而影响正常阅读流,因此,我们可以进一步优化下,使用标签,利用伪元素,例如:
.half:before { content: '\2002'; speak: none; } .full:before { content: '\2003'; speak: none; }
html代码:
<ul><li class="li">姓<span class="full"></span><span class="full"></span>名:<input type="text" /></li><li class="li">手<span class="half"></span>机<span class="half"></span>号:<input type="text" /></li><li class="li">电子邮箱:<input type="text" /></li> </ul>
css代码:
.half {*zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } .full {*zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); } .half:before { content: '\2002'; speak: none; } .full:before { content: '\2003'; speak: none; }
上面用到了runtimeStyle这个对象属性,这个是IE专属的。
下面简单介绍下style、 currentStyle、 runtimeStyle以及getComputedStyle的区别,在IE下测试如下。
html代码:
<div id="tt" style="color:blue;">这里是来检测style,currentStyle,runtimeStyle的区别</div>
js代码:
var myDiv = document.getElementById("tt"); myDiv.runtimeStyle.color="black"; console.log(myDiv.currentStyle.color); //black console.log(myDiv.runtimeStyle.color); //black console.log(document.defaultView.getComputedStyle(myDiv, null).color); //rgb(0, 0, 0) console.log(myDiv.style.color); //blue
说明一下:
obj.style:这个方法只能JS只能获取写在html标签中的写在style属性中的值(style=”…”),而无法获取定义在<style type="text/css">里面的属性。
IE中使用的是obj.currentStyle方法,而FF是用的是getComputedStyle 方法 。
“DOM2级样式”增强了document.defaultView,提供了getComputedStyle()方法。这个方法接受两个参数:要取得计算样式的元素和一个伪元素字符串(例如“:after”)。如果不需要伪元素信息,第二个参数可以是null。getComputerStyle()方法返回一个CSSStyleDeclaration对象,其中包含当前元素的所有计算的样式。
其语法为:document.defaultView.getComputedStyle('元素', '伪类');IE9及以上支持该写法,IE8以及以下不支持。
总结一下:
通过document.defaultView.getComputedStyle()得到背景色,不同浏览器得到的不一样,可能会返回将所有颜色转换成RGB格式,也可能是颜色值。
IE通过currentStyle方法得到的颜色值没有将颜色转化成RGB格式。
详细了解:《js中使用document.defaultView.getComputedStyle()、currentStyle()方法获取CSS属性值》
参考地址:
小tips: 使用 等空格实现最小成本中文对齐
CSS 听觉参考手册
web页面相关的一些常见可用字符介绍
HTML空格符号 nbsp; ensp; emsp; 介绍以及实现中文对齐的方法相关推荐
- HTML提供的5种空格实体(nbsp`;`ensp`; `emsp`;` thinsp`; `zwnj`;`zwj`;)
它叫"全角空格",全称是Em Space,em是字体排印学的计量单位,相当于当前指定的点数.例如,1 em在16px的字体中就是16px.此空格也传承空格家族一贯的特性:透明的 ...
- html中的空格符号( nbsp; ensp; emsp; )介绍以及中文对齐实现的方法详解
一:不同空格符合的区别 半角的不断行的空白格(推荐使用) 半角的空格 全角的空格 详细的含义: :这是我们使用最多的空格,也就是按下space键产生的空格.在HTML中,如果你用空格键产 ...
- oracle 输出全角空格,html中的空格符号( nbsp; ensp; emsp; )介绍以及中文对齐实现的方法详解...
一:不同空格符合的区别   半角的不断行的空白格(推荐使用) &ensp 半角的空格 &emsp 全角的空格 详细的含义:  :这是我们使用最多的空格, ...
- HTML中nbsp; ensp; emsp; thinsp;等6种空白空格的区别
HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格( )是常规空格的宽度,可运行于所有主流浏览器.其他几种空格( )在不同浏览器中宽度各异. 它 ...
- Html和Markdown中的空格, nbsp; ensp; emsp; 以及 thinsp; zwnj; zwj;
HTML和Markdown可以用以下转义字符分隔字符 , , , , , 的宽度,可运行于所有主流浏览器.其他几种空格( , , , ,)在不同浏览器中宽度各 ...
- nbsp; ensp; emsp; thinsp;zwnj;zwj; 6种空白空格的区别
HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格( )是常规空格的宽度,可运行于所有主流浏览器.其他几种空格( )在不同浏览器中宽度各异. ...
- HTML中nbsp; ensp; emsp; thinsp; zwnj; zwj;等6种空白空格的区别
HTML提供了5种空格实体(space entity),它们拥有不同的宽度,非断行空格( )是常规空格的宽度,可运行于所有主流浏览器.其他几种空格( )在不同浏览器中宽度各异. 它 ...
- Html和Markdown中的空格, nbsp; ensp; emsp; 以及 thinsp; zwnj; zwj;三种Unicode空格
HTML和Markdown可以用以下转义字符分隔字符 , , , , , 的宽度,可运行于所有主流浏览器.其他几种空格( , , , ,)在不同浏览器中宽度各 ...
- HTML中的 nbsp; ensp; emsp;等6种空格标记
代码: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="utf-8"> 5 ...
最新文章
- 谢文睿:西瓜书 + 南瓜书 吃瓜系列 9. 集成学习(上)
- Python 相对路径、绝对路径的写法实例演示
- linux空文件夹大小,[转载]linux 查看文件和文件夹大小
- 程序员的半衰期只有15年?
- ubuntu14.10环境下Apeach的安装配置
- go http.Get请求 http.Post请求 http.PostForm请求 Client 超时设置
- java笔试题_一道简单的 Java 笔试题,但值得很多人反思
- Command ‘ifconfig‘ not found, but can be installed with: sudo apt install net-tools VM Ubuntu 解决方案
- [IDEA插件] - 一个不错的插件
- TurboMosaic 如何制作照片马赛克效果
- 职场 PUA 你知多少?
- 数学专业英语—矩阵篇
- Windows安装镜像下载
- (原创)Lottie动画使用介绍
- C# 实现DES加密解密
- 大数据到底应该如何学?
- 手把手教你如何在AWS EC2 启用 IPv6
- CSS实现元素width右方向变化、左方向变化、双向变化
- 关于网页显示夏令时时区问题
- 大数据------维度表,事实表
热门文章
- 如何做短视频推广?抖音短视频推广方案
- windows 10关闭粘滞键
- 解决Tableau做漏斗图转化率不对的问题
- html中如何使标题栏置顶,html5 底部固定且等分的切换栏+顶部固定的标题栏实现方式...
- 处理canvas导出的图片变形的问题
- ipmi nf5280m5 浪潮_浪潮NF5280M5和华为哪款服务器性能接近?
- 【Pytorch】 repeat()的用法详解
- 如何做好一场技术演讲-总结:1、演讲之前需要做好哪些准备?
- 合肥先进光源束测后台的初步设计
- iOS中 CoreGraphics快速绘图(详解) 韩俊强的博客