当前位置:Gxlcms > css > CSS3实现文本垂直排列

CSS3实现文本垂直排列

时间:2021-07-01 10:21:17 帮助过:81人阅读

这篇文章主要介绍了关于CSS3实现文本垂直排列,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

最近的一个项目中要使文字垂直排列,也就是运用了CSS的writing-mode属性。

writing-mode最初时ie中支持的一个属性,后来在CSS3中增添了这一新的属性,所以在ie中和其他浏览器中的语法会有区别。

1.0 CSS3标准

  1. writing-mode:horizontal-tb;//默认:水平方向,从上到下
  2. writing-mode:vertical-rl; //垂直方向,从右向左
  3. writing-mode:vertical-lr; //垂直方向,从左向右
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>CSS文字垂直排列</title>
  6. <style type="text/css">
  7. div{
  8. border: 1px solid lightblue;
  9. padding: 5px;
  10. }
  11. .vertical-text{
  12. -webkit-writing-mode: vertical-rl;
  13. writing-mode: vertical-rl;
  14. }
  15. </style>
  16. </head>
  17. <body>
  18. <div class="vertical-text">
  19. 1. 文字垂直排列 <br />
  20. 2. 文字垂直排列
  21. </div>
  22. </body>
  23. </html>

2.0 IE中

由于历史的原因,IE下该属性值则显得尤为复杂:

-ms-writing-mode: lr-tb | rl-tb | tb-rl | bt-rl | tb-lr | bt-lr | lr-bt | rl-bt | lr | rl | tb

具体可以查看官方文档:

https://developer.mozilla.org/en-US/docs/Web/CSS/writing-mode/

3.0 一些应用

3.1 垂直居中  

通过对这个属性的使用,我们可以结合 text-align:center 实现垂直居中或者使用margin: auto。

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>CSS3 图片垂直居中</title>
  6. <style type="text/css">
  7. div{
  8. border: 1px solid lightblue;
  9. padding: 5px;
  10. height: 500px;
  11. }
  12. .vertical-img{
  13. -webkit-writing-mode: vertical-rl;
  14. -ms-writing-mode: bt-rl;
  15. writing-mode: vertical-rl;
  16. text-align: center;
  17. }
  18. </style>
  19. </head>
  20. <body>
  21. <div class="vertical-img">
  22. <img src="1.jpg"/>
  23. </div>
  24. </body>
  25. </html>

3.2 文字下沉效果

我们可以设置文字的writing-mode,然后在结合text-indent来实现文字点击时的下沉效果;

  1. <!DOCTYPE html> 2 <html>
  2. <head>
  3. <meta charset="utf-8">
  4. <title>文字下沉效果</title>
  5. <style type="text/css">
  6. .btn{
  7. width: 50px;
  8. height: 50px;
  9. line-height: 50px;
  10. color: white;
  11. text-align: center;
  12. font-size: 16px;;
  13. display: inline-block;
  14. border-radius: 50%;
  15. background: gray;
  16. cursor: pointer;
  17. }
  18. .btn:active{
  19. text-indent: 2px;
  20. }
  21. .vertical-text{
  22. writing-mode: tb-rl;
  23. -webkit-writing-mode: vertical-rl;
  24. writing-mode: vertical-rl;
  25. *writing-mode: tb-rl;
  26. }
  27. </style>
  28. </head>
  29. <body>
  30. <span>点击领红包</span>
  31. <p class="vertical-text btn">开 </p>
  32. </body>
  33. </html>

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

css渐变色彩 省略标记 嵌入字体 文本阴影的全面介绍

CSS3中transform变换模型渲染的解析

以上就是CSS3实现文本垂直排列的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行