HTML 使用 ruby 给汉字加拼音

  • [使用 ruby 给汉字加拼音](#使用 ruby 给汉字加拼音)
    *
    *
    *

使用 ruby 给汉字加拼音

大家有没有遇到过要给汉字头顶上加拼音的需求? 如果有的话, 你是怎么解决的呢? 如果费尽心思, 那么你可能走了很多弯路, 因为 HTML 原生就有这样的标签来帮我们实现类似的需求.

<ruby>

ruby 本身是「红宝石」的意思, 与题无关

<ruby> 元素是可以渲染在基本文字上、下或旁边的小注释, 通常用来显示东亚文字(CJK, Chinese Japanese and Korean)的发音.

先一睹为快效果

html 复制代码
<body>
  真理使人
  <ruby> 自 <rp>(</rp><rt>zì</rt><rp>)</rp> </ruby>
  <ruby> 由 <rp>(</rp><rt>yóu</rt><rp>)</rp> </ruby>
  .
</body>

哇😍, 效果是不是很赞! 没错, 使用起来就是折磨简单, 不过除了 <ruby> 外, 我们还用到了很多其他元素, 下面就一一来介绍

这里多说一句, 即便是不同的书写方向, <ruby> 仍然可以很好的适应. 比如我们将书写顺序改为垂直书写.

<rp>

The Ruby Fallback Parenthesis element, Parenthesis 是圆括号的意思

<rp> 元素用来为不支持 <ruby> 显示的浏览器提供兜底的括号.

每一组 <rp></rp> 应该分别将开始和结束圆括号括起来, 这对圆括号再将 <rt> 元素括起来, 而最终拼音是在 <rt> 元素中.

html 复制代码
<rp>(</rp><rt>zì</rt><rp>)</rp>

<rt>

The Ruby Text element

<rt> 中提供东亚文字的发音等信息, <rt> 必须包含在 <ruby> 中.

兼容性

桌面浏览器没得说, 如果需要适配手机端, 还需要多多考虑

谢谢你看到这里😊

相关推荐
ByteCraze3 分钟前
手写高性能虚拟列表(详解!!!)
javascript·学习
M ? A9 分钟前
Vue转React最佳工具对比:Vuera、Veaury与VuReact
前端·javascript·vue.js·经验分享·react.js
We་ct15 分钟前
JS手撕:函数进阶 & 设计模式解析
开发语言·前端·javascript·设计模式·面试·前端框架
悟空瞎说30 分钟前
前端老鸟实战:纯 CSS 实现小红书「真・瀑布流」,零 JS、自动错落、生产可用
前端
yuki_uix30 分钟前
当 reduce 遇到二维数据:从"聚合直觉"到"复合 Map"的思维跃迁
前端·javascript·面试
我叫黑大帅33 分钟前
Vue3中的computed 与 watch 的区别
前端·javascript·面试
暗不需求35 分钟前
# 一文搞懂 JavaScript 内存机制:从栈和堆,到闭包为什么“活得更久”
前端·javascript
CharlesY36 分钟前
JavaScript HTML5 Cache Manifest:离线应用缓存机制考古
前端·javascript
yuki_uix36 分钟前
前端解题的 6 个思维模型:比记答案更有用的东西
前端·面试
开心码农1号1 小时前
RabbitMQ 生产运维命令大全
linux·开发语言·ruby