欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

css中writing-mode文字显示方向以及兼容的写法

程序员文章站 2022-05-09 12:13:19
...
css 的writing-mode据说是为了中文,日文等方块文字设计的,用来修改文字的书写方向,通过这个属性可以实现文字从右向左的布局,或者从上向下的布局。

writing-mode使用

.wrtmod{
    margin:15px;
    padding:15px;
    border:1px solid #bababa;
    background:#f1f1f1;
    font-size:15px;
    writing-mode:vertical-rl;
    writing-mode: tb-rl;
}

效果如下:

chrome浏览器:

css中writing-mode文字显示方向以及兼容的写法

IE浏览器

css中writing-mode文字显示方向以及兼容的写法

writing-mode的属性值有:horizontal-tb,vertical-lr,vertical-rl,对应的IE下的值为:lr-tb,tb-lr,tb-rl。

horizontal-tb是默认值。writing-mode的属性值用中划线分割,可以记作XX-OO, horizontal-tb表示文字横向排列,行上下排列,veritcal-rl表示文字上下排列,行从右向左排列。IE的lr-tb表示文字从左到有排列,行从上向下排列,tb-rl表示文字上下排列,行从优向左排列。lr是left,right的首字母缩写,tb是top,bottom首字母的缩写。IE下面还可以使用诸如bt-rl,lr-bt等属性值,排列方式更加丰富。但是为了兼容性在writing-mode属性中只能采用这三个排列方式。

从上面的截图,我们可以看到writing-mode不只改变了文字的书写方向,而且容器的布局方式也随之改变了。chrome,FireFox浏览器下div呈现了inline的特性,

IE8浏览器整个div由横向转为纵向,拥有了高度自适应的特性。

writing-mode的用途一般也就是用在一些诗句的纵向显示,或者一些复古效果的页面上,但是要注意IE8与其他浏览器的不同,它没有呈现inline的特性,所以我们要通过display:inline-block来实现IE下的效果。

.wrtmod{
    margin:15px;
    padding:15px;
    border:1px solid #bababa;
    background:#f1f1f1;
    font-size:15px;
    writing-mode:vertical-rl;
    writing-mode:tb-rl;
    text-align:center;
    line-height:32px;
    letter-spacing: 12px;
    display: inline-block;
 
}
.wrtmod:first-line{
    font-weight:bold;
    color:#0C58A7;
    font-size:18px;
}
 
<div class="wrtmod">
    静夜思<br/>
    窗前明月光<br/>
    疑是地上霜<br/>
    举头望明月<br/>
    低头思故乡
</div>

效果如下:

css中writing-mode文字显示方向以及兼容的写法

writing-mode改变了书写模式后,使用text-align:center就可以实现上下居中。上面效果使用了letter-spacing和::first-line伪类,再结合write-mode就实现了一首古诗的书写效果。

以上就是css中writing-mode文字显示方向以及兼容的写法的详细内容,更多请关注其它相关文章!