a标签右侧尖括号_ruby标签从入门到应用

本文详细介绍了HTML5新增的ruby标签及其子标签的作用与用法,包括如何为东亚文字标注发音,如汉语拼音,并提供了简单的示例代码。此外还探讨了标签的兼容性和一些较少使用的相关标签。

title: HTML ruby标签从入门到应用

  • JavaScript categories: JavaScript

ruby标签

HTML 5 发布时新增了一款偏门标签,用来对文字(主要是东亚地区)(也就是汉字)的发音做标注的标签,标签是父级标签,具体有'内容'/'标注'/‘备选’

一、是什么

一句话加上一张简单效果图应该就可以让你搞懂这个标签究竟是做什么的。

为文字标注发音。

上图:

48a6ae812520da41211420a6cf961f37.png

汉字 + 汉语拼音(不局限于汉语拼音)。

二、怎么用

导语部分介绍了下三个主要子标签, - 下方内容主体, - 上方标注内容 - 当浏览器不兼容时备选显示内容

简单的栗子:

英雄えいゆう(えいゆう)

示例图:

7c63940c30c87dc8533f5c9c25151405.png

当然,对应汉语拼音与其他任何语言标注,都可以简单的处理

冰山工作室bing shan gong zuo shi
0e25ed78508266dff2deb22bcc3b53d8.png

做一个静态自动添加拼音的demo(含音调字符可以映射拼写,多语言或复杂场景需要服务器词库支持)

392e1a2b89edd3120df2004180f7787f.png

到这里为止,基本就是这个标签的全部应用了,就是这么的简单友好, 虽说是针对东亚文字,但是你完全可以按照你的意愿对内容和标注内容进行自定义(比如英文标注汉字?)。

**兼容性:**强调标签本身,IE8以上及各大主流浏览器都支持,但是除了他本身,基本都不支持。

PS: 带有声调的汉语拼音需要输入法切换,同理可证的。

三、认识也暂时没什么用的标签

在介绍这两个子标签之前,我所看过的关于的介绍文章,大多数都没有包含,而是省略直接用字符串后接标签内容,不过并不推荐这么做。

**前提:**目前只有Firefox浏览器支持,其他任何浏览器都将忽略该标签(也就是会显示标签内的内容)

  • 标签,标签的集合,一个主体中只能存在一个,多个默认第一个有效,其实就是来管理所有的标签,(Q: 不用行不行?A: 完全没问题,顶多DOM不那么那么规范)
  • 标签,标签的加强版,注意,不是合集!一个内容标签最多可以对应两个标签 这个标签在一定场景下还是有用处的,比如一个场景栗子:
146bf0fb7a688148e7a6ca1c38d6d8af.png

上面英文,中间汉字,下面汉语拼音,很多字幕翻译都会有这种情况, 如果你头铁要采用双中间的战术,不用试,不好用。我试过了

这个时候就需要上下两层注释内容,可以采用上下都用或者一个 + 的组合。

 早(zao)上(shang)好(hao)(おはよう)
252c3dec577681cde65bab6fdbd4dee3.png

或者

冰山工作室bing shan gong zuo shibing shan gong zuo shi
374fb152b619f15dc91902aec57c031b.png

四、属性与样式

  1. 首先, 标签和所有HTML标签一样,支持所有常规的标签属性和事件绑定,也支持对应的CSS样式

注: 以下样式目前仅Firefox全支持。(别急,别的浏览器也有办法的)

  1. ruby-position :上述代码中出现了ruby-position 样式,是标签特有样式, ruby-position 控制标签内容与标注文字的相对位置。样式值:
  • over 水平文本的上方渲染标注,在垂直文本的右侧渲染。默认值。
  • under 水平文本的下方渲染标注,垂直文本底部左侧渲染。
  • inter-character 在每个字符的右侧渲染水平文本的红宝石文本,会强制垂直显示内容文本。(目前未实装)
  1. ruby-align: 表示内容与标注的文字对齐方式
  • start 起始位置对齐(左对齐)
  • center 居中
  • space-between 均匀分布
  • space-around 在其框内均匀分布内容,但不一定从边缘到边缘填充空间。
  1. ruby-merge: 这个属性首先个人觉得没用,其次没有实装。用来整合标签的。
  • separate: 整合相邻标签的内容(也就是),再简单点说,省一个,好的下一位。
  • collapse: 整合同一行的内容与标注文本,简单的理解就是,同行下省了若干标签。
  1. 那么,如果不能使用Firefox怎么办,用其他CSS样式写呗 (~~又没说不支持text-align~~)

PS:

  1. 目前在Chrome浏览器中已经开始支持部分内容(比如将标注放在内容下方),但是值得注意的是,属性值完全不一样。
  2. 即使不用,文本标签配合CSS一样可以实现。

引用:

  1. https://www.chenhuijing.com/blog/html-ruby/#%F0%9F%91%9F
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值