Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 亚州综合激情另类久久久,www.一区,日韩午夜在线视频不卡片

          整合營銷服務(wù)商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          ruby標簽從入門到應(yīng)用


          itle: HTML ruby標簽從入門到應(yīng)用

          • JavaScript categories: JavaScript

          ruby標簽

          HTML 5 發(fā)布時新增了一款偏門標簽,用來對文字(主要是東亞地區(qū))(也就是漢字)的發(fā)音做標注的標簽,標簽是父級標簽,具體有'內(nèi)容'<rb>/'標注'<rt>/‘備選’<rp>

          一、是什么

          一句話加上一張簡單效果圖應(yīng)該就可以讓你搞懂這個標簽究竟是做什么的。

          為文字標注發(fā)音。

          上圖:

          漢字 + 漢語拼音(不局限于漢語拼音)。

          二、怎么用

          導(dǎo)語部分介紹了<ruby>下三個主要子標簽<rb> <rt> <rp>, <rb> - 下方內(nèi)容主體, <rt> - 上方標注內(nèi)容 <rp> - 當瀏覽器不兼容時備選顯示內(nèi)容

          簡單的栗子:

          <ruby>
           <rb>英雄</rb>
           <rt>えいゆう</rt>
           <rp>(えいゆう)</rp>
          </ruby>
          

          示例圖:

          當然,對應(yīng)漢語拼音與其他任何語言標注,都可以簡單的處理

          <ruby>
           <rb>冰山工作室</rb>
           <rt>bing shan gong zuo shi</rt>
          </ruby>
          

          做一個靜態(tài)自動添加拼音的demo(含音調(diào)字符可以映射拼寫,多語言或復(fù)雜場景需要服務(wù)器詞庫支持)

          到這里為止,基本就是這個標簽的全部應(yīng)用了,就是這么的簡單友好, 雖說是針對東亞文字,但是你完全可以按照你的意愿對內(nèi)容和標注內(nèi)容進行自定義(比如英文標注漢字?)。

          **兼容性:**強調(diào)<ruby>標簽本身,IE8以上及各大主流瀏覽器都支持,但是除了他本身,基本都不支持。

          PS: 帶有聲調(diào)的漢語拼音需要輸入法切換,同理可證的。

          三、認識也暫時沒什么用的標簽

          在介紹這兩個子標簽之前,我所看過的關(guān)于的介紹文章,大多數(shù)都沒有包含,而是省略直接用字符串后接標簽內(nèi)容,不過并不推薦這么做。

          **前提:**目前只有Firefox瀏覽器支持,其他任何瀏覽器都將忽略該標簽(也就是會顯示<rp>標簽內(nèi)的內(nèi)容)

          • <rbc>標簽,<rb>標簽的集合,一個<ruby>主體中只能存在一個,多個默認第一個有效,其實就是來管理所有的<rb>標簽,(Q: 不用行不行?A: 完全沒問題,頂多DOM不那么那么規(guī)范)
          • <rtc>標簽,<rt>標簽的加強版,注意,不是合集!一個內(nèi)容標簽最多可以對應(yīng)兩個<rtc>標簽 這個標簽在一定場景下還是有用處的,比如一個場景栗子:


          上面英文,中間漢字,下面漢語拼音,很多字幕翻譯都會有這種情況, 如果你頭鐵要采用雙<rt>中間<rb>的戰(zhàn)術(shù),不用試,不好用。我試過了

          這個時候就需要上下兩層注釋內(nèi)容,可以采用上下都用<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>
          

          四、屬性與樣式

          1. 首先, <ruby>標簽和所有HTML標簽一樣,支持所有常規(guī)的標簽屬性和事件綁定,也支持對應(yīng)的CSS樣式

          注: 以下樣式目前僅Firefox全支持。(別急,別的瀏覽器也有辦法的)

          1. ruby-position :上述代碼中出現(xiàn)了ruby-position 樣式,是<ruby>標簽特有樣式, ruby-position 控制<ruby>標簽內(nèi)容與標注文字的相對位置。樣式值:
          • over 水平文本的上方渲染標注,在垂直文本的右側(cè)渲染。默認值。
          • under 水平文本的下方渲染標注,垂直文本底部左側(cè)渲染。
          • inter-character 在每個字符的右側(cè)渲染水平文本的紅寶石文本,會強制垂直顯示內(nèi)容文本。(目前未實裝)
          1. ruby-align: 表示內(nèi)容與標注的文字對齊方式
          • start 起始位置對齊(左對齊)
          • center 居中
          • space-between 均勻分布
          • space-around 在其框內(nèi)均勻分布內(nèi)容,但不一定從邊緣到邊緣填充空間。
          1. ruby-merge: 這個屬性首先個人覺得沒用,其次沒有實裝。用來整合<ruby>標簽的。
          • separate: 整合相鄰<ruby>標簽的內(nèi)容(也就是<rb>),再簡單點說,省一個<ruby>,好的下一位。
          • collapse: 整合同一行的內(nèi)容與標注文本,簡單的理解就是,同行下省了若干<rb> <rt>標簽。
          1. 那么,如果不能使用Firefox怎么辦,用其他CSS樣式寫唄 (~~又沒說不支持text-align~~)

          PS:

          1. 目前在Chrome瀏覽器中已經(jīng)開始支持部分內(nèi)容(比如將標注放在內(nèi)容下方),但是值得注意的是,屬性值完全不一樣。
          2. 即使不用<ruby>,文本標簽配合CSS一樣可以實現(xiàn)。

          引用:

          1. https://www.chenhuijing.com/blog/html-ruby/#%F0%9F%91%9F

          TML 教程導(dǎo)讀- (HTML5 標準):

          HTML也叫作超文本標記語言,標準通用標記語言下的一個應(yīng)用,您可以使用 HTML 來建立自己的 WEB 站點。通過學習本教程,您將可以使用 HTML 來創(chuàng)建站點。HTML 是非常容易學習的!相信您能很快學會它!


          HTML發(fā)展史:

          HTML沒有1.0,因為關(guān)于它的初版存在爭議,1995年HTML 2.0面世,1997年由國際官方組織W3C推出了HTML 3.2以及HTML 4.0標準,后面W3C(萬維網(wǎng)聯(lián)盟)也漸漸變成Web技術(shù)領(lǐng)域的權(quán)威,經(jīng)過漫長的演變,2014年,HTML 5標準最終面世。

          HTML 2.0——1995年11月,RFC 1866發(fā)布

          HTML 3.2——1997年1月14日,W3C發(fā)布推薦標準

          HTML 4.0——1997年12月18日,W3C發(fā)布推薦標準

          HTML 4.01——1999年12月24日,W3C發(fā)布推薦標準

          HTML 5——2014年10月28日,W3C發(fā)布推薦標準


          HTML 實例:

          在本教程中的每個章節(jié)中都會提供一定量的實例,使用編輯器,運行并修改這些實例,您可以深入掌握 HTML!

          實例:

          <!DOCTYPE html>

          <html>

          <head>

          <meta charset="utf-8">

          <title>test00-html課程導(dǎo)讀實例</title>

          </head>

          <body>

          <h1>這是一個標題</h1>

          <p>這是一個段落。</p>

          </body>

          </html>

          使用HBuilderX創(chuàng)建一個項目:

          我是一名前端開發(fā)程序員,自己整理了一份2019最全面前端學習資料,從最基礎(chǔ)的HTML+CSS+JS到移動端HTML5到各種框架都有整理,送給每一位前端小伙伴,這里是小白聚集地,歡迎初學和進階中的小伙伴

          前端資料獲取方式:

          1.在你手機的右上角有【關(guān)注】選項,點擊關(guān)注!

          2.關(guān)注后,手機客戶端點擊我的主頁面,右上角有私信,請私信回復(fù):【學習】

          電腦已經(jīng)設(shè)置好了關(guān)鍵詞自動回復(fù),所以回復(fù)的時候請注意關(guān)鍵詞喲~

          讀:現(xiàn)在的開發(fā)人員都趨向于使用新的編程語言,那么舊的編程語言呢?它們的前途一般是這樣兩種:仍然可以使用,但逐漸不受大家歡迎;直接完全死去。和之前的十佳最受歡迎的編程語言相反,我們預(yù)測以下這幾種編程語言面臨著死亡威脅。

          01 Perl

          曾幾何時,幾乎每個人都在使用Perl語言編程。但是那些經(jīng)常使用的人慢慢地發(fā)現(xiàn),關(guān)于這個Perl語言似乎總是有點不對勁。至少我知道有這么個叫做“piecemeal”的編程語言,它的創(chuàng)造者似乎就只是將這個功能堆在另一個功能上面而已,并沒有好好考慮將它們結(jié)合在一起。


          事實上,甚至是它的創(chuàng)造者也不得不承認這種編程語言是有問題的。經(jīng)過完整地改造之后,現(xiàn)在的開發(fā)工作開始傾向于使用Perl6,這個大概是在2000年的時候。至于Perl?儼然已經(jīng)銷聲匿跡了!所以完全沒有必要去學習它了。順便說一句,下面這個“Goodbye World”就是用Perl寫的:

          #!/usr/bin/perlprint "Content-type: text/html
          
          ";print "Goodbye, world!
          ";


          上面這個例子會出來一個網(wǎng)頁。現(xiàn)在的Perl,由于可以作為CGI腳本語言,所以使用的最廣泛的是在生成web頁面上。但是為了適應(yīng)時代的變化,我們最好還是將Perl語言“棄之如敝履”。

          02 Ruby

          關(guān)于Ruby,可以這么唱“十年之后,我不認識你你不屬于我……”因為就在10年前,Ruby語言可謂是風靡一時。它出生于1995年,5年左右達到它的鼎盛時期。如果你經(jīng)常使用的話,絕對會義無反顧地愛上它。


          但是,像我們這些學著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的階乘。下面是結(jié)果(由于篇幅限制,中間略過了2569個數(shù)字):


          ruby fact.rb 100040238726007709377354370243392300…0000000


          從各方面來看,Ruby都很好,幾乎是一片贊譽聲……除了Twitter。在2011年4月,Twitter宣稱他們已經(jīng)將幾乎大部分的代碼都改寫過了,以便不必使用Ruby和它的web框架——Ruby on Rails,據(jù)他們所說這個平臺非常之低效。


          不過,我想說的是,也正是那一天起,Ruby開始走下坡路,使用的人數(shù)也是越來越少。


          03 Visual Basic.NET

          十年前,我應(yīng)聘到一個需要重寫大量代碼的公司,名字我已經(jīng)忘記了,主要工作就是將VB6轉(zhuǎn)換為Visual basic.NET。大概就只干了一兩個月吧,我就跳槽了:真心太痛苦了。


          微軟鐘愛于BASIC編程語言的擴展可以一路追溯到1991年,那時他們剛剛采購了來自Alan Cooper的一個非常酷(對于那個時候而言)的可視化編程設(shè)計。


          Alan Cooper初期使用的是別的編程語言,但是比爾蓋茨讓他換成BASIC語言,因為蓋茨認為那是當時最為簡單的編程語言。于是乎,大名鼎鼎的Visual Basic,就從BASIC中衍生出來——對象這一概念以及新的編程技術(shù)問世了。


          后面又發(fā)生了一些很有意思的事情。Borland Delphi的創(chuàng)造引領(lǐng)者,Anders Hejlsberg也到微軟工作,并且引領(lǐng)創(chuàng)建了一個新的編程語言——C#。


          這種編程語言非常類似于Java語言。剛開始的學習或許有點難,但是一旦上手,你絕對會對它愛不釋手。C#很快就成為了微軟的旗艦編程語言。現(xiàn)在的話,在軟件行業(yè)中,有很多很多需要C#的工作崗位,不少都是高薪聘用的。


          雖然針對自己的CLR運行,微軟創(chuàng)建了C#,但是它的工程師們另外還創(chuàng)建了一個蓋茨深愛的BASIC語言版本,命名為Visual Basic.NET。


          該編程語言借用了BASIC語言的語法,但是它的編碼方法卻與C#相似。雖然Visual Basic.NET也在發(fā)展,但是優(yōu)勝劣汰總是不可避免的——大家都選擇了C#,于是Visual Basic.NET就成為了明日黃花。


          下面是摘自微軟網(wǎng)頁上的一段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”,這個沒關(guān)系。)


          04 Adobe Flash和AIR

          從技術(shù)上講,這些都是平臺,而非編程語言。我之所以將它們包含進來是因為如果你想要使用它們,就必須安裝Adobe自己的ECMAScript版本,即ActionScript。


          ActionScript是JavaScript(當前最流行的編程語言之一,因為它能用于所有的瀏覽器)的一個近親。ActionScript在ECMAScript(這是JavaScript實現(xiàn)標準的官方名稱)中增加了一些細節(jié);但是除了Adobe Flash,其他地方幾乎沒有ActionScript的用武之地。


          你使用Flash不?喬布斯非常討厭它,并且也不允許iPhone使用它。然后隨著iPhone(以及隨后的iPad)的逐漸普及,Web開發(fā)人員不得不創(chuàng)建不必依賴于Flash的網(wǎng)站。那些以ActionScript為生的開發(fā)人員也不得不紛紛下崗。(我曾經(jīng)看到過一個Flash開發(fā)人員指責另一個JavaScript開發(fā)人員毀了他的職業(yè)生涯。)


          Adobe也曾試圖通過AIR以求得其編程平臺的一線生機,于是配建了一個用于構(gòu)建AIR app的工具,稱為Flex。至于AIR,許多人都說,這是一場災(zāi)難。不過我們目前也不知道為什么Adobe會推出AIR,可能是想用AIR取代Flash?也可能是想要AIR和Flash相親相愛共同發(fā)展?


          記得有一段時間,得益于Twitter平臺——TweetDeck(要求用戶在電腦上安裝AIR運行時)的使用,AIR很是紅火了一陣子。那時大概有數(shù)以百萬計的pc AIR應(yīng)用被開發(fā)出來,只是后來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);   } }}


          (你可能會發(fā)現(xiàn)這與JavaScript非常相似,都使用var、function和new,并且也使用小數(shù)點來訪問成員變量。)


          05 Delphi's Object Pascal

          首先我得向我曾經(jīng)的好伙伴Delphi表示歉意,因為我不得不公布Object Pascal的“死訊”。well,Delphi(用于發(fā)Object Pascal的工具)歷經(jīng)變遷之后,依然茍延殘喘著(它起源于Borland公司,現(xiàn)在抱著Embarcadero公司的大腿)。


          早先Delphi和它的Object Pascal語言確實給我們提供了一個良好的工作環(huán)境:雖然有點啰嗦,但是編譯器很快,而且相比Visual Basic(這里指的是pre-Visual Basic.NET,1995年左右),創(chuàng)建Windows程序更容易。


          但是它的優(yōu)勢并沒有持續(xù)下去。也很難說是什么原因,因為這個平臺真心是不錯的。就在這時,Borland公司開始在其Delphi的產(chǎn)品線上支持C#和C++。


          發(fā)展到后來,Borland公司甚至直接將Delphi賣給了Embarcadero公司,然后Embarcadero公司繼續(xù)使用Delphi開發(fā)產(chǎn)品。話說,它做得相當不錯,但是重點再也不是Pascal了。當然,你依然可以用Pascal編程,但是幾乎沒人走這條路了。


          事實上,我們可以使用Delphi建立許多不同的平臺,包括iOS、Android,以及即將到來的Linux操作系統(tǒng)。


          但是,如果你去Embarcadero公司的網(wǎng)站看看,你會發(fā)現(xiàn)他們主要是在促進Delphi's C++ 的支持。因此,換言之就是,Object Pascal已然逝去了。寫到這里,我不禁悲從心來,因為我花了很多很多時間來學習Pascal語言,特別是Delphi's Object Pascal。但是沒辦法,現(xiàn)實就是如此殘酷,不轉(zhuǎn)行就只能餓死。


          下面請看Object Pascal的代碼:


          program HelloWorld;begin    writeln('You say goodbye.')


          譯者注:以上觀點僅代表作者個人觀點。


          主站蜘蛛池模板: 日韩精品无码视频一区二区蜜桃| 国产精品久久一区二区三区 | 国产伦精品一区二区三区免.费 | 少妇人妻精品一区二区三区| 国产激情一区二区三区在线观看| 国产午夜精品一区理论片| 国产在线步兵一区二区三区| 亚洲av乱码一区二区三区香蕉| 国产免费一区二区视频| 国产美女口爆吞精一区二区| 国产精品一区二区无线| 无码夜色一区二区三区| 亚洲国产精品一区二区三区在线观看| 另类免费视频一区二区在线观看| 亚洲AV无码一区二区三区在线观看| 日韩精品午夜视频一区二区三区| 在线中文字幕一区| 日韩精品视频一区二区三区 | 亚洲AV乱码一区二区三区林ゆな| jazzjazz国产精品一区二区| 国模一区二区三区| 精品国产一区二区三区www| 无码视频免费一区二三区| 亚洲性色精品一区二区在线| 一区一区三区产品乱码| 亚洲一区二区三区高清不卡| 亚洲AV日韩综合一区尤物| 亚洲一区二区无码偷拍| 亚洲精品精华液一区二区| 国模无码视频一区二区三区| 国产成人午夜精品一区二区三区| 狠狠色综合一区二区| 在线观看精品视频一区二区三区| 国产一区二区不卡老阿姨| 国产精品一区二区在线观看| 一区二区三区电影在线观看| 99精品高清视频一区二区| 无码午夜人妻一区二区三区不卡视频| ...91久久精品一区二区三区| 亚欧在线精品免费观看一区| 亚洲一区二区三区写真|