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 午夜精品久久久久久久第一页,国产一区二区精品,毛片网站是多少

          整合營銷服務(wù)商

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

          免費(fèi)咨詢熱線:

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


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

          • JavaScript categories: JavaScript

          ruby標(biāo)簽

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

          一、是什么

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

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

          上圖:

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

          二、怎么用

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

          簡單的栗子:

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

          示例圖:

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

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

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

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

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

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

          三、認(rèn)識也暫時(shí)沒什么用的標(biāo)簽

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

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

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


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

          這個(gè)時(shí)候就需要上下兩層注釋內(nèi)容,可以采用上下都用<rtc>或者一個(gè)<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>標(biāo)簽和所有HTML標(biāo)簽一樣,支持所有常規(guī)的標(biāo)簽屬性和事件綁定,也支持對應(yīng)的CSS樣式

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

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

          PS:

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

          引用:

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

          TML 教程導(dǎo)讀- (HTML5 標(biāo)準(zhǔn)):

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


          HTML發(fā)展史:

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

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

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

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

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

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


          HTML 實(shí)例:

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

          實(shí)例:

          <!DOCTYPE html>

          <html>

          <head>

          <meta charset="utf-8">

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

          </head>

          <body>

          <h1>這是一個(gè)標(biāo)題</h1>

          <p>這是一個(gè)段落。</p>

          </body>

          </html>

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

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

          前端資料獲取方式:

          1.在你手機(jī)的右上角有【關(guān)注】選項(xiàng),點(diǎn)擊關(guān)注!

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

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

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

          01 Perl

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


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

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


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

          02 Ruby

          關(guān)于Ruby,可以這么唱“十年之后,我不認(rèn)識你你不屬于我……”因?yàn)榫驮?0年前,Ruby語言可謂是風(fēng)靡一時(shí)。它出生于1995年,5年左右達(dá)到它的鼎盛時(shí)期。如果你經(jīng)常使用的話,絕對會義無反顧地愛上它。


          但是,像我們這些學(xué)著C語言風(fēng)格長大的孩子在學(xué)習(xí)Ruby時(shí)往往會覺得有點(diǎn)囧。


          下面是用Ruby寫的“Goodbye World”:


          puts 'Bye bye, Miss American Ruby! Drove my Chevy to the Levie…'puts '2011 was the day that Ruby died, yeah…'


          下面是一個(gè)用于計(jì)算階乘的例子:


          def fact(n)  if n == 0    1  else    n * fact(n-1)  endendputs fact(ARGV[0].to_i)


          我測試了這個(gè)例子,來計(jì)算1000的階乘。下面是結(jié)果(由于篇幅限制,中間略過了2569個(gè)數(shù)字):


          ruby fact.rb 100040238726007709377354370243392300…0000000


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


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


          03 Visual Basic.NET

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


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


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


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


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


          雖然針對自己的CLR運(yùn)行,微軟創(chuàng)建了C#,但是它的工程師們另外還創(chuàng)建了一個(gè)蓋茨深愛的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”,這個(gè)沒關(guān)系。)


          04 Adobe Flash和AIR

          從技術(shù)上講,這些都是平臺,而非編程語言。我之所以將它們包含進(jìn)來是因?yàn)槿绻阆胍褂盟鼈儯捅仨毎惭bAdobe自己的ECMAScript版本,即ActionScript。


          ActionScript是JavaScript(當(dāng)前最流行的編程語言之一,因?yàn)樗苡糜谒械臑g覽器)的一個(gè)近親。ActionScript在ECMAScript(這是JavaScript實(shí)現(xiàn)標(biāo)準(zhǔn)的官方名稱)中增加了一些細(xì)節(jié);但是除了Adobe Flash,其他地方幾乎沒有ActionScript的用武之地。


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


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


          記得有一段時(shí)間,得益于Twitter平臺——TweetDeck(要求用戶在電腦上安裝AIR運(yùn)行時(shí))的使用,AIR很是紅火了一陣子。那時(shí)大概有數(shù)以百萬計(jì)的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ù)點(diǎn)來訪問成員變量。)


          05 Delphi's Object Pascal

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


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


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


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


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


          但是,如果你去Embarcadero公司的網(wǎng)站看看,你會發(fā)現(xiàn)他們主要是在促進(jìn)Delphi's C++ 的支持。因此,換言之就是,Object Pascal已然逝去了。寫到這里,我不禁悲從心來,因?yàn)槲一撕芏嗪芏鄷r(shí)間來學(xué)習(xí)Pascal語言,特別是Delphi's Object Pascal。但是沒辦法,現(xiàn)實(shí)就是如此殘酷,不轉(zhuǎn)行就只能餓死。


          下面請看Object Pascal的代碼:


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


          譯者注:以上觀點(diǎn)僅代表作者個(gè)人觀點(diǎn)。


          主站蜘蛛池模板: 黄桃AV无码免费一区二区三区| 久久免费精品一区二区| 一区二区三区亚洲视频| 91精品国产一区二区三区左线 | 一区二区三区视频| 国产精品乱码一区二区三区| 日韩好片一区二区在线看| 国产99精品一区二区三区免费| 亚洲综合无码一区二区三区| 国产精品 一区 在线| 一区二区三区免费电影| 国产一区二区三区在线免费观看| 无码乱人伦一区二区亚洲| 制服丝袜一区二区三区| 香蕉视频一区二区| 国产亚洲欧洲Aⅴ综合一区| 无码人妻一区二区三区精品视频| 人妻夜夜爽天天爽一区| 亚洲欧美日韩国产精品一区| 亚洲国产一区在线观看| 精品亚洲AV无码一区二区三区| 久久精品一区二区三区资源网| 夜夜嗨AV一区二区三区| 波多野结衣免费一区视频 | 亚洲熟女www一区二区三区| 三上悠亚日韩精品一区在线| 一区二区三区观看免费中文视频在线播放| 中文字幕一区二区三区四区| 国产成人无码AV一区二区在线观看| 无码人妻AⅤ一区二区三区水密桃 无码欧精品亚洲日韩一区夜夜嗨 无码毛片一区二区三区中文字幕 无码毛片一区二区三区视频免费播放 | 色欲AV蜜臀一区二区三区| 伊人久久精品无码av一区| 日本不卡一区二区视频a| 美女啪啪一区二区三区| 少妇激情一区二区三区视频| 亚洲一区二区三区久久久久| av一区二区三区人妻少妇| 国产精品亚洲一区二区三区久久 | 亚洲一区二区三区国产精品无码| 久久亚洲AV午夜福利精品一区| 亚洲一区中文字幕在线观看|