CSS实现文字竖排显示(兼容IE6/IE7)

平时我们常使文字横排显示,那么如何用CSS实现文字竖排显示呢?以下是代码实例。

<p class="time">2018年4月4日15:17</p>
.time{
  width: 16px;
  line-height: 16px;
  font-size: 16px;
  color: red;
}

可以看到在浏览器里如图所示:
CSS实现文字竖排显示(兼容IE6/IE7)
因为缩小了宽度,所以导致文字变为单行,但是数字和时间的地方却依然是横排显示。然后通过搜索查找,发现一个CSS属性是writing-mode。


语法:

writing-mode:horizontal-tb | vertical-rl | vertical-lr | lr-tb | tb-rl
默认值:normal
适用于:除 <' display '> 属性定义为table-row-group | table-column-group | table-row | table-column之外的所有元素
继承性:
动画性:
计算值:特定值


取值:

horizontal-tb:水平方向自上而下的书写方式。即 left-right-top-bottom(类似IE私有值lr-tb)
vertical-rl:垂直方向自右而左的书写方式。即 top-bottom-right-left(类似IE私有值tb-rl)
vertical-lr:垂直方向自左而右的书写方式。即 top-bottom-left-right
lr-tb:左-右,上-下。对象中的内容在水平方向上从左向右流入,后一行在前一行的下面。 所有的字形都是竖直向上的。这种布局是罗马语系使用的(IE)
tb-rl:上-下,右-左。对象中的内容在垂直方向上从上向下流入,自右向左。后一竖行在前一竖行的左面。全角字符是竖直向上的,半角字符如拉丁字母或片假名顺时针旋转90度。这种布局是东亚语系通常使用的(IE)


说明:

设置或检索对象的内容块固有的书写方向。西方语言一般都是 lr-tb 的书写方式,但是亚洲语言 lr-tb | tb-rl 的书写方式都有。
作为IE的私有属性之一,IE5.5率先实现了 writing-mode ,后期被w3c采纳成标准属性;
此属性效果不能被累加使用。例如,父对象的此属性值设为 tb-rl ,子对象再设置该属性将不起作用,仍应用父对象的设置。
对应的脚本特性为writingMode。


兼容:

可兼容IE6/IE7及常见浏览器。


那么代码可编写为:

.time{
  writing-mode: vertical-lr;
  writing-mode: tb-rl;
  overflow: hidden;
  width: 16px;
  line-height: 16px;
  font-size: 16px;
  color: red;
  letter-spacing: 1px;//增加字符间距离,允许使用负值
}

则此时浏览器中显示如图所示:
CSS实现文字竖排显示(兼容IE6/IE7)
可以看到文字数值显示,且数字顺时针旋转90度。

上一篇:Domino8.5服务器迁移方案


下一篇:mysql 快速入门