HTML文本中默认的文本方向是left to right。但对于古汉语或者阿拉伯语等语言,文本方向则是right to left。如何实现呢?

1. HTML方式:<bdo dir="rtl"></bdo> 点击进入官方网页

HTML代码如下:

<bdo dir="ltr">a bc de.</bdo>
<bdo dir="rtl">A BC DE%</bdo>

显示效果如下:

a bc de.
%ED CB A

可见:通过HTML中的bdo标签改变文字方向,是依照从右向左的顺序依次输出bdo标签中的每个字符。但输出的内容还是从屏幕的左侧依次向右输出。不要与text-align:right和float:right搞混。

2. CSS方式:{direction:rtl;}

HTML和CSS如下:

<p style="direction: rtl;">It's a beautiful world, isn't it? I think it is.?!@#$%[]{}</p>
<p>It's a beautiful world, isn't it? I think it is.?!@#$%[]{}</p>
<p style="direction: rtl;">It's a beautiful world, isn't it? I think it is.?!@#$%[]{}abc!</p>
<p>It's a beautiful world, isn't it? I think it is.?!@#$%[]{}abc!</p>

显示效果如下:

                                            {}[]%$#@!?.It's a beautiful world, isn't it? I think it isIt's a beautiful world, isn't it? I think it is.?!@#$%[]{}abc!!It's a beautiful world, isn't it? I think it is.?!@#$%[]{}abcIt's a beautiful world, isn't it? I think it is.?!@#$%[]{}abc!

可见:格式上,使用了direction的文本呈现右对齐;内容上,可以将这段内容中中最后一个非符号字符(含)之前看成是文本部分,最后的符号看成是符号部分,每个符号都是一个独立的部分。(如果一个符号前后都有文本字符,那这么符号将被认为是文本部分。)然后在页面上从右向左倒序输出以上的所有部分,即,首先输出完整的文本部分,然后再倒序一次输出所有符号部分。

3. CSS方式:{direction:rtl; unicode-bidi: bidi-override;}

HTML和CSS如下:(对2中的源码进行修改,在style部分添加unicode-bidi: bidi-override;部分)

<p style="direction: rtl; unicode-bidi: bidi-override;">It's a beautiful world, isn't it? I think it is.?!@#$%[]{}</p>

显示效果如下:

                                                {}[]%$#@!?.si ti kniht I ?ti t'nsi ,dlrow lufituaeb a s'tI

可见:每一个字符都是一个独立的个体,页面将从右向左依次倒叙输出所有字符。

总结见下表:

(纯从文字技巧层面来看,1和3的实现比较彻底,但从语义来看,可能2有实际的应用意义,并不确定,有待以后探究!)

对设置文字方向的几种方式的比较

方式 格式 文本 1 左对齐 完全倒叙 2 右对齐 部分倒叙 3 右对齐 完全倒叙

这篇文章解释得更详细:我的小树林

通过HTML和CSS设置文字方向相关推荐

  1. CSS设置文字的划线

    CSS设置文字的划线 文字加上下划线.顶划线和删除线,在文档中是经常使用的. CSS中通过设置文字的text-decoration属性,来实现这些特殊的效果. <span style=" ...

  2. php css下划线,css下划线如何设置?css设置文字下划线的方法介绍

    在网页中默认情况下文字字体是没有下划线样式的,但是有时候我们在网页中会看到不是链接的文字下面会有一行下划线,那么这个下划线样式是怎么实现的呢?本篇文章就来给大家介绍一下css设置文字下划线的方法,接下 ...

  3. 如何让竖行文本框从下往上_如何在Office文档中插入(使用)横排、竖排文本框并设置文字方向...

    ①:为什么要使用文本框? 文本框相当于一个容器,里面可以容纳文字对象!放置于文本框的文字对象,基于文本框,可形成一个统一的整体: ②:使用文本框有什么好处? 作为一个容器,文本框就像图片对象一样,周边 ...

  4. CSS 设置文字只显示一行,多余显示省略号

    CSS 设置文字只显示一行,多余显示省略号 .view-text{/**思路:1.设置inline-block属相2.强制不换行3.固定高度4.隐藏超出部分5.显示"--"*/di ...

  5. 如何用css设置文字的聚光灯效果

    要用 CSS 设置文字的聚光灯效果,你可以使用 text-shadow 属性. 例如: .highlighted {text-shadow: 0 0 5px #ffff00; } 在这个例子中,我们为 ...

  6. css设置文字溢出隐藏

    css设置文字溢出隐藏 让文字只显示一行,超出显示省略号 多行文本, 显示 n 行,剩下的省略号替代 仅仅是用来提示自己,不要忘记的 让文字只显示一行,超出显示省略号 overflow: hidden ...

  7. CSS设置文字镂空效果

    CSS设置文字镂空效果 color设置transparent,也就是透明 -webkit-text-stroke: 1px @theme-font-color;可以自定义边框的宽度和颜色 color: ...

  8. css 设置文字隐藏

    css 设置文字隐藏 设置display: none:但是这个设置后,后面的字体将会向前移动:就是隐藏之后不占位置: 设置opacity: 0 :会被子元素继承,但是不能设置子元素opacity:0来 ...

  9. php 自定义行间距,CSS设置文字行间距的方法介绍(代码示例)

    本篇文章的内容是关于CSS设置文字行间距的方法介绍,内容很详细,有需要的朋友可以参考一下. 对于行间距的设置肯定是需要行高属性line-height来设置间距.(相关推荐:CSS学习手册) 指定绝对值 ...

最新文章

  1. python xlrd简单读取excel
  2. java笔记4-类型转换
  3. C++析构器详解【C++析构器】
  4. spring知识概要
  5. android 指针是什么意思,Android系统的智能指针(轻量级指针、强指针和弱指针)的实现原理分析(3)...
  6. 在线登记系统代码 php_PHP框架实现WebSocket在线聊天通讯系统
  7. cocos2d-x将背景色改为白色
  8. VS2013打开项目出现未找到与约束contractname 匹配的导出的错误
  9. mapgis新手教程(非常适合新手参考)
  10. 中兴java笔试题_中兴Java开发笔试题目及答案(7)
  11. 项目组合、项目集、项目管理实践经验及思考
  12. qq视频转码失败怎么办_迅捷视频转换器腾讯视频转换失败如何解决?
  13. 央行征信与互联网征信技术接口区别(征信架构篇)
  14. 信息收集之外网信息收集
  15. Linux环境安装python3报错:“HTTP Error 416 Requested Range Not Satisfiable 正在尝试其它镜像”的解决方法
  16. 涨知识了!这9个鲜为人知的 Python 第三方库真棒!
  17. Android基于网络的VoIP电话的实现linphone
  18. [Android ] seekbar ,去除自定义thumb滑块不透明背景
  19. 《网络游戏核心技术与实战》学习笔记——专业术语
  20. 《SpringBoot框架学习二之HTTP协议》

热门文章

  1. mysql触发器 signal_MySQL触发器使用
  2. delphi 获取硬盘序列号
  3. 微信小程序“真心话”冲刺阶段01
  4. iOS 城市定位 英文
  5. PHP上网网址电影视频导航网站设计
  6. android studio 数据库管理app
  7. xfplay(先锋影音) v8.9.7 官方版​
  8. 基于微信小程序的走失人员的报备案件志愿者线索平台SSM-JAVA【数据库设计、论文、源码、开题报告】
  9. Linux系统中Java环境的搭建及JDK的安装(附上每一步操作截图及说明)【一看就懂】
  10. 怎样摆脱Linux系统菜鸟头衔