itle: HTML ruby标签从入门到应用
ruby标签
HTML 5 发布时新增了一款偏门标签,用来对文字(主要是东亚地区)(也就是汉字)的发音做标注的标签,标签是父级标签,具体有'内容'<rb>/'标注'<rt>/‘备选’<rp>
一、是什么
一句话加上一张简单效果图应该就可以让你搞懂这个标签究竟是做什么的。
为文字标注发音。
上图:
汉字 + 汉语拼音(不局限于汉语拼音)。
二、怎么用
导语部分介绍了<ruby>下三个主要子标签<rb> <rt> <rp>, <rb> - 下方内容主体, <rt> - 上方标注内容 <rp> - 当浏览器不兼容时备选显示内容
简单的栗子:
<ruby> <rb>英雄</rb> <rt>えいゆう</rt> <rp>(えいゆう)</rp> </ruby>
示例图:
当然,对应汉语拼音与其他任何语言标注,都可以简单的处理
<ruby> <rb>冰山工作室</rb> <rt>bing shan gong zuo shi</rt> </ruby>
做一个静态自动添加拼音的demo(含音调字符可以映射拼写,多语言或复杂场景需要服务器词库支持)
到这里为止,基本就是这个标签的全部应用了,就是这么的简单友好, 虽说是针对东亚文字,但是你完全可以按照你的意愿对内容和标注内容进行自定义(比如英文标注汉字?)。
**兼容性:**强调<ruby>标签本身,IE8以上及各大主流浏览器都支持,但是除了他本身,基本都不支持。
PS: 带有声调的汉语拼音需要输入法切换,同理可证的。
三、认识也暂时没什么用的标签
在介绍这两个子标签之前,我所看过的关于的介绍文章,大多数都没有包含,而是省略直接用字符串后接标签内容,不过并不推荐这么做。
**前提:**目前只有Firefox浏览器支持,其他任何浏览器都将忽略该标签(也就是会显示<rp>标签内的内容)
上面英文,中间汉字,下面汉语拼音,很多字幕翻译都会有这种情况, 如果你头铁要采用双<rt>中间<rb>的战术,不用试,不好用。我试过了
这个时候就需要上下两层注释内容,可以采用上下都用<rtc>或者一个<rtc> + <rt>的组合。
<ruby> <rbc> <rb>早</rb><rp>(</rp><rt>zao</rt><rp>)</rp> <rb>上</rb><rp>(</rp><rt>shang</rt><rp>)</rp> <rb>好</rb><rp>(</rp><rt>hao</rt><rp>)</rp> </rbc> <rtc style="ruby-position: under;"> <rp>(</rp><rt>おはよう</rt><rp>)</rp> </rtc> </ruby>
或者
<ruby> <rb>冰山工作室</rb> <rtc style = "ruby-position: over"><rt>bing shan gong zuo shi</rt></rtc> <rtc style = "ruby-position: under"><rt>bing shan gong zuo shi</rt></rtc> </ruby>
四、属性与样式
注: 以下样式目前仅Firefox全支持。(别急,别的浏览器也有办法的)
PS:
引用:
TML 教程导读- (HTML5 标准):
HTML也叫作超文本标记语言,标准通用标记语言下的一个应用,您可以使用 HTML 来建立自己的 WEB 站点。通过学习本教程,您将可以使用 HTML 来创建站点。HTML 是非常容易学习的!相信您能很快学会它!
HTML发展史:
HTML没有1.0,因为关于它的初版存在争议,1995年HTML 2.0面世,1997年由国际官方组织W3C推出了HTML 3.2以及HTML 4.0标准,后面W3C(万维网联盟)也渐渐变成Web技术领域的权威,经过漫长的演变,2014年,HTML 5标准最终面世。
HTML 2.0——1995年11月,RFC 1866发布
HTML 3.2——1997年1月14日,W3C发布推荐标准
HTML 4.0——1997年12月18日,W3C发布推荐标准
HTML 4.01——1999年12月24日,W3C发布推荐标准
HTML 5——2014年10月28日,W3C发布推荐标准
HTML 实例:
在本教程中的每个章节中都会提供一定量的实例,使用编辑器,运行并修改这些实例,您可以深入掌握 HTML!
实例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>test00-html课程导读实例</title>
</head>
<body>
<h1>这是一个标题</h1>
<p>这是一个段落。</p>
</body>
</html>
使用HBuilderX创建一个项目:
我是一名前端开发程序员,自己整理了一份2019最全面前端学习资料,从最基础的HTML+CSS+JS到移动端HTML5到各种框架都有整理,送给每一位前端小伙伴,这里是小白聚集地,欢迎初学和进阶中的小伙伴
前端资料获取方式:
1.在你手机的右上角有【关注】选项,点击关注!
2.关注后,手机客户端点击我的主页面,右上角有私信,请私信回复:【学习】
电脑已经设置好了关键词自动回复,所以回复的时候请注意关键词哟~
读:现在的开发人员都趋向于使用新的编程语言,那么旧的编程语言呢?它们的前途一般是这样两种:仍然可以使用,但逐渐不受大家欢迎;直接完全死去。和之前的十佳最受欢迎的编程语言相反,我们预测以下这几种编程语言面临着死亡威胁。
曾几何时,几乎每个人都在使用Perl语言编程。但是那些经常使用的人慢慢地发现,关于这个Perl语言似乎总是有点不对劲。至少我知道有这么个叫做“piecemeal”的编程语言,它的创造者似乎就只是将这个功能堆在另一个功能上面而已,并没有好好考虑将它们结合在一起。
事实上,甚至是它的创造者也不得不承认这种编程语言是有问题的。经过完整地改造之后,现在的开发工作开始倾向于使用Perl6,这个大概是在2000年的时候。至于Perl?俨然已经销声匿迹了!所以完全没有必要去学习它了。顺便说一句,下面这个“Goodbye World”就是用Perl写的:
#!/usr/bin/perlprint "Content-type: text/html ";print "Goodbye, world! ";
上面这个例子会出来一个网页。现在的Perl,由于可以作为CGI脚本语言,所以使用的最广泛的是在生成web页面上。但是为了适应时代的变化,我们最好还是将Perl语言“弃之如敝履”。
关于Ruby,可以这么唱“十年之后,我不认识你你不属于我……”因为就在10年前,Ruby语言可谓是风靡一时。它出生于1995年,5年左右达到它的鼎盛时期。如果你经常使用的话,绝对会义无反顾地爱上它。
但是,像我们这些学着C语言风格长大的孩子在学习Ruby时往往会觉得有点囧。
下面是用Ruby写的“Goodbye World”:
puts 'Bye bye, Miss American Ruby! Drove my Chevy to the Levie…'puts '2011 was the day that Ruby died, yeah…'
下面是一个用于计算阶乘的例子:
def fact(n) if n == 0 1 else n * fact(n-1) endendputs fact(ARGV[0].to_i)
我测试了这个例子,来计算1000的阶乘。下面是结果(由于篇幅限制,中间略过了2569个数字):
ruby fact.rb 100040238726007709377354370243392300…0000000
从各方面来看,Ruby都很好,几乎是一片赞誉声……除了Twitter。在2011年4月,Twitter宣称他们已经将几乎大部分的代码都改写过了,以便不必使用Ruby和它的web框架——Ruby on Rails,据他们所说这个平台非常之低效。
不过,我想说的是,也正是那一天起,Ruby开始走下坡路,使用的人数也是越来越少。
十年前,我应聘到一个需要重写大量代码的公司,名字我已经忘记了,主要工作就是将VB6转换为Visual basic.NET。大概就只干了一两个月吧,我就跳槽了:真心太痛苦了。
微软钟爱于BASIC编程语言的扩展可以一路追溯到1991年,那时他们刚刚采购了来自Alan Cooper的一个非常酷(对于那个时候而言)的可视化编程设计。
Alan Cooper初期使用的是别的编程语言,但是比尔盖茨让他换成BASIC语言,因为盖茨认为那是当时最为简单的编程语言。于是乎,大名鼎鼎的Visual Basic,就从BASIC中衍生出来——对象这一概念以及新的编程技术问世了。
后面又发生了一些很有意思的事情。Borland Delphi的创造引领者,Anders Hejlsberg也到微软工作,并且引领创建了一个新的编程语言——C#。
这种编程语言非常类似于Java语言。刚开始的学习或许有点难,但是一旦上手,你绝对会对它爱不释手。C#很快就成为了微软的旗舰编程语言。现在的话,在软件行业中,有很多很多需要C#的工作岗位,不少都是高薪聘用的。
虽然针对自己的CLR运行,微软创建了C#,但是它的工程师们另外还创建了一个盖茨深爱的BASIC语言版本,命名为Visual Basic.NET。
该编程语言借用了BASIC语言的语法,但是它的编码方法却与C#相似。虽然Visual Basic.NET也在发展,但是优胜劣汰总是不可避免的——大家都选择了C#,于是Visual Basic.NET就成为了明日黄花。
下面是摘自微软网页上的一段Visual Basic.NET程序:
'Allow easy reference to the System namespace classes.Imports System'This module houses the application's entry point.Public Module modmain 'Main is the application's entry point. Sub Main() 'Write text to the console. Console.WriteLine ("Hello World using Visual Basic!") End SubEnd Module
(这里的“Hello World”也可以替换成“Goodbye World”,这个没关系。)
从技术上讲,这些都是平台,而非编程语言。我之所以将它们包含进来是因为如果你想要使用它们,就必须安装Adobe自己的ECMAScript版本,即ActionScript。
ActionScript是JavaScript(当前最流行的编程语言之一,因为它能用于所有的浏览器)的一个近亲。ActionScript在ECMAScript(这是JavaScript实现标准的官方名称)中增加了一些细节;但是除了Adobe Flash,其他地方几乎没有ActionScript的用武之地。
你使用Flash不?乔布斯非常讨厌它,并且也不允许iPhone使用它。然后随着iPhone(以及随后的iPad)的逐渐普及,Web开发人员不得不创建不必依赖于Flash的网站。那些以ActionScript为生的开发人员也不得不纷纷下岗。(我曾经看到过一个Flash开发人员指责另一个JavaScript开发人员毁了他的职业生涯。)
Adobe也曾试图通过AIR以求得其编程平台的一线生机,于是配建了一个用于构建AIR app的工具,称为Flex。至于AIR,许多人都说,这是一场灾难。不过我们目前也不知道为什么Adobe会推出AIR,可能是想用AIR取代Flash?也可能是想要AIR和Flash相亲相爱共同发展?
记得有一段时间,得益于Twitter平台——TweetDeck(要求用户在电脑上安装AIR运行时)的使用,AIR很是红火了一阵子。那时大概有数以百万计的pc AIR应用被开发出来,只是后来Twitter在2011年买了TweetDeck之后,又改写本地代码取代了AIR。于是乎,AIR的辉煌就到此为止。
随着Flash和AIR的逐渐逝去,Adobe的ActionScript也开始向世界吻别。下面是一些用ActionScript写的代码示例。
package {import flash.display.*;import flash.text.*;public class HelloWorld extends Sprite { private var greeting:TextField = new TextField();public function HelloWorld() { greeting.text = “Hello World!”; greeting.x = 100; greeting.y = 100; addChild(greeting); } }}
(你可能会发现这与JavaScript非常相似,都使用var、function和new,并且也使用小数点来访问成员变量。)
首先我得向我曾经的好伙伴Delphi表示歉意,因为我不得不公布Object Pascal的“死讯”。well,Delphi(用于发Object Pascal的工具)历经变迁之后,依然苟延残喘着(它起源于Borland公司,现在抱着Embarcadero公司的大腿)。
早先Delphi和它的Object Pascal语言确实给我们提供了一个良好的工作环境:虽然有点啰嗦,但是编译器很快,而且相比Visual Basic(这里指的是pre-Visual Basic.NET,1995年左右),创建Windows程序更容易。
但是它的优势并没有持续下去。也很难说是什么原因,因为这个平台真心是不错的。就在这时,Borland公司开始在其Delphi的产品线上支持C#和C++。
发展到后来,Borland公司甚至直接将Delphi卖给了Embarcadero公司,然后Embarcadero公司继续使用Delphi开发产品。话说,它做得相当不错,但是重点再也不是Pascal了。当然,你依然可以用Pascal编程,但是几乎没人走这条路了。
事实上,我们可以使用Delphi建立许多不同的平台,包括iOS、Android,以及即将到来的Linux操作系统。
但是,如果你去Embarcadero公司的网站看看,你会发现他们主要是在促进Delphi's C++ 的支持。因此,换言之就是,Object Pascal已然逝去了。写到这里,我不禁悲从心来,因为我花了很多很多时间来学习Pascal语言,特别是Delphi's Object Pascal。但是没办法,现实就是如此残酷,不转行就只能饿死。
下面请看Object Pascal的代码:
program HelloWorld;begin writeln('You say goodbye.')
译者注:以上观点仅代表作者个人观点。
*请认真填写需求信息,我们会在24小时内与您取得联系。