Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >小程序-实现竖排文字

小程序-实现竖排文字

作者头像
前端黑板报
发布于 2018-01-29 09:19:24
发布于 2018-01-29 09:19:24
11.5K1
举报
文章被收录于专栏:前端黑板报前端黑板报

最近我在做一个诗词类的小程序:《诗词屋》,已经上线。因为古文有从上到下,从右到左阅读和书写的习惯,所以我设计了一个摘录页面,如下:

整体布局就是按照古代人阅读习惯来的,有点韵味。但是我们如何实现上面那种垂直布局呢?

模板文件如下:

  1. <view class="mod-text">
  2. <text>窗前明月光</text>
  3. <text>疑是地上霜</text>
  4. </view>

那样式该如何写呢?看需求应该和方向或者书写模式有关。也就是CSS中的 writing-mode。

这个属性比较生僻,在一般业务中很少遇到,如果没有见过也不容易想到。它的语法:

  1. /* Keyword values */
  2. writing-mode: horizontal-tb;
  3. writing-mode: vertical-rl;
  4. writing-mode: vertical-lr;
  5. /* Global values */
  6. writing-mode: inherit;
  7. writing-mode: initial;
  8. writing-mode: unset;

初始值是:horizontal-tb。从字面意思我们也应该能猜到什么意思,比如:vertical-rl,就是垂直方向从上到下,水平方向从右到左。

预期表现:

从上图,我们应该能看出,使用 vertical-xx 基本可以实现我们的效果,那我们应该使用哪个呢?

先使用vertical-lr貌似这个接近我们的预期从左向右。那我们该把这个属性放在哪个元素上呢?从它的定义来看,它可以决定子元素的排列方向,那应该放到父元素上即.mod-text

wxss如下:

  1. .mod-text{
  2. writing-mod:vertical-rl;
  3. }

可是效果并不是我们期望的:

如果想不到此时的布局流向,你可以多加一些字:

如果还是别扭,你可以向右歪脖子或旋转图片:

定高是可以实现,但古诗一句的字数是不等的,貌似不够灵活。

仔细想想,我们只要使每一句的古诗占据一列不就行了吗?回忆一下在水平排列时,如何使元素占据一行?就是使元素块级化不就行了。

  1. .mod-text text{
  2. display:block;
  3. }

这就达到了预期的效果:

明天继续说一下另一种解法,如果你有好的方法,可以留言!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-01-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 前端黑板报 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
样式是writing-mode 不是writing-mod
样式是writing-mode 不是writing-mod
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
【Hello CSS】第二章-CSS的逻辑属性与盒子模型
在上一篇 【HelloCSS】的第一章CSS的语法与工作流中介绍了 CSS的语法规则以及基本的渲染流程。本篇则会分享 CSS的逻辑属性以及盒子模型。
陈大鱼头
2020/04/16
6350
【Hello CSS】第二章-CSS的逻辑属性与盒子模型
dashucoding记录2019.6.6
CSS语法 flex-direction: row|row-reverse|column|column-reverse|initial|inherit;
达达前端
2019/07/03
3510
dashucoding记录2019.6.6
CSS3魔法堂:说说Multi-column Layout
前言  是否记得《读者文摘》中那一篇篇优美感人的文章呢?那除了文章内容外,还记得那报刊、杂志独有的多栏布局吗?  当我们希望将报刊、杂志中的阅读体验迁移到网页上时,最简单直接的方式就是采用多栏布局来对内容排版,然而在过去我们仅能通过float+positioned来模拟多栏布局,而且效果不尽人意。而CSS3引入新的Multi-column Layout模型,从底层支持多栏布局。  文本作为学习笔记,以便日后查阅。 通栏布局与多栏布局  在深入Multi-column Layout模型之前,我们先看看疗效
^_^肥仔John
2018/01/18
1K0
CSS3魔法堂:说说Multi-column Layout
CSS实用技巧第一讲:文字处理
作为程序猿的我们,书写代码也需要大量的技巧。一份良好的代码能让人耳目一新,让人容易理解,同时也让自己成就感满满。因此,在这里简单的整理一些CSS开发技巧,希望能让你写出耳目一新、容易理解、舒服自然的代码。
Javanx
2019/10/12
1.1K0
CSS实用技巧第一讲:文字处理
86. 精读《国际化布局 - Logical Properties》
“一带一路” 正在积极推动中国的国际化进程,前端网站也面临着前所未有的国际化挑战。那么怎么才能积极响应 “一带一路” 战略,推动网站的国际化工作呢?可以先从国际化布局开始考虑。
黄子毅
2022/03/14
5240
86. 精读《国际化布局 - Logical Properties》
6 个没人讲过的 CSS 属性
自 1994 年以来,设计网站一直是 CSS 的唯一目的,它是一门描述网站外观的语言。
前端劝退师
2021/05/11
1K0
6 个没人讲过的 CSS 属性
你可能还不知的 7 个 CSS 好用的属性
学习CSS是构建好看网页的一种方式。 但是,在学习过程中,我们倾向于(大部分时间)限制自己,一遍又一遍地使用相同的属性。 毕竟,我们是一种习惯性的动物,我们会使用自己习惯且熟悉的东西。
前端小智@大迁世界
2020/05/12
1.5K0
你可能还不知的 7 个 CSS 好用的属性
我想推荐一本书 《CSS 世界》
前段时间张鑫旭老师的《css 世界》出版,之前看过他写的博客,写的挺好的,一直就在思考要不要买?
sunseekers
2018/10/31
1.5K0
前端开发者们值得了解的 11 项前端技巧
通过以下 HTML/CSS/JavaScript 相关技巧,希望能帮助大家填补一点点关于前端开发方面的知识空白。
深度学习与Python
2020/11/05
5420
小程序-实现竖排文字(二)
前一篇文章《小程序-实现竖排文字》只说了一个解决方案,这次再说一些别的解决方案。 把每一句古诗竖排布局,wxml 代码结构: <view class="mod-text"> <text>窗前明月光</text> <text>疑是地上霜</text></view> wxss如下: .mod-text text{ writing-mode:vertical-rl;} 因为是每一句一列,所以这里使用 vertical-lr 也可以,但是为了以后句子太长,做高度限制时,折列的时候也是从右向左
前端黑板报
2018/01/29
3K0
小程序-实现竖排文字(二)
18个很有用的 CSS 技巧
shape-outside 是一个允许设置形状的 CSS 属性。它还有助于定义文本流动的区域:
@超人
2023/05/12
7810
18个很有用的 CSS 技巧
超级实用!,掌握这9个鲜为人知的CSS属性
虽然许多开发人员熟悉常用的CSS属性,但也有一些较为陌生的属性可能被忽视了。在本文中,我们将探讨10个你可能没有使用过的CSS属性。
前端小智@大迁世界
2023/08/16
8890
5个你可能不知道的CSS属性
每年都有新的CSS属性被标准化,并在主流浏览器中可用。 它们旨在使Web开发人员变得轻松,创造出新颖美丽的网站。
疯狂的技术宅
2019/03/28
1K0
5个你可能不知道的CSS属性
CSS 世界中的方位与顺序
譬如 margin、padding,它们就会有 margin-left、margin-right 或者是 padding-left、padding-right。还有定位中的 left、top、right、bottom,它们表示了上下左右不同的方位。
Sb_Coco
2021/07/21
1.5K0
CSS 世界中的方位与顺序
译|你不知道的CSS国际化
我遇到过一些人,他们根本不认为CSS与国际化有关,但如果你仔细想想,国际化不仅仅是把你网站上的内容翻译成多种语言,然后就收工了。该内容的呈现方式有各种细微的差别,这些细微的差别会影响到母语人士使用您的网站的体验。
张张
2020/05/09
1.7K0
译|你不知道的CSS国际化
writing mode与4大文字系统
writing-mode是一个强大的CSS属性,能让文字竖排(实际上能让任何东西竖排,因为能改变默认布局流),例如:
ayqy贾杰
2023/03/15
1.9K0
writing mode与4大文字系统
移动端H5知识[系列] - “百变”盒模型
HTML5学堂:移动端从2012年走到今日,已经占领了互联网的半壁江山。网站开发也从PC平台向移动端平台开发发展。作为一个优秀的前端开发者,除了能够处理传统平台的网站,还需要能够处理移动端的网页。可是,新的事物伴随着各个浏览器,也就冒出了各种兼容问题。第4步——“百变”盒模型。 “百变”盒模型 学过HTML和CSS的同学都知道,盒模型是由width、height、border、padding、margin这几个属性共同组成的。一个元素在网页文档中占据的真正空间是盒模型的大小,而非简简单单width和heig
HTML5学堂
2018/03/12
8620
移动端H5知识[系列] - “百变”盒模型
【Web前端】CSS文本处理方向
处理不同方向的文本是一个重要且复杂的任务,尤其是在多语言支持和跨文化网站设计中尤为重要。CSS(层叠样式表)为我们提供了强大的工具来处理不同的书写模式和布局方向。接下来我们来继续探讨关于 CSS 中的书写模式、块级布局和内联布局、方向、逻辑属性和逻辑值,以及如何使用这些工具来有效地管理文本的显示。
一条晒干的咸鱼
2024/11/19
2970
【Web前端】CSS文本处理方向
全栈之前端 | 8.CSS3基础知识之文本样式学习
描述: 通过前面几章的学习,相信大家已经对CSS有了一个简单的了解吧,现在我们又回到使用频率较高的 文本 text、图像 images、表单 table 等元素CSS样式的设置,此章节主要讲解针对文本的相关CSS属性以其使用的示例演示。
全栈工程师修炼指南
2023/10/31
7520
全栈之前端 | 8.CSS3基础知识之文本样式学习
【布局】493- 工作中遇到的特殊CSS布局
虽然有时确实会让我们花蛮多时间去实现,但从一方面想这也是个机会,让我们更深入了解的浏览器布局方式。
pingan8787
2020/02/17
1.2K0
相关推荐
【Hello CSS】第二章-CSS的逻辑属性与盒子模型
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档