国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于編譯層疊樣式表的方法和設(shè)備的制作方法

      文檔序號:6354418閱讀:260來源:國知局
      專利名稱:用于編譯層疊樣式表的方法和設(shè)備的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明的實施方式總體上涉及網(wǎng)絡(luò)信息技術(shù),更具體地,涉及用于編譯層疊樣式表的方法和設(shè)備。
      背景技術(shù)
      隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,層疊樣式表(Cascading Style Sheet,簡稱CSS)已成為現(xiàn)代網(wǎng)絡(luò)信息技術(shù)的ー個重要組成部分。CSS可以作為単獨的文件而存在,也作為代碼段被包含在相應(yīng)Web頁面的源代碼文件(例如,超文本鏈接語言HTML文件)之中。CSS可用于定義ー組與Web頁面的繪制和呈現(xiàn)有關(guān)的規(guī)則,以用于控制Web頁面的外觀和/或用戶交互。 例如,CSS文件可以限定Web頁面中的字體、字號、超級鏈接的樣式、對各種用戶交互事件的響應(yīng),等等。通過使用CSS來設(shè)置Web頁面的格式,可實現(xiàn)Web頁面的內(nèi)容與表現(xiàn)形式的分離。Web頁面內(nèi)容存放在HTML文檔中,而用于定義表現(xiàn)形式的CSS規(guī)則存放在另ー個文件中或HTML文檔的某一部分(通常為文件頭部分)。這樣不僅可使維護站點的外觀更加容易,而且還可以使HTML文檔代碼更加簡練,縮短瀏覽器的加載時間。此外,CSS的使用還有利于Web頁面的修改,便于Web頁面風(fēng)格的統(tǒng)一。然而,目前在CSS的開發(fā)和使用中,始終存在瀏覽器的兼容性問題。具體而言,某些老舊類型的瀏覽器對CSS的支持能力有限,無法按照CSS中指定的樣式來繪制和呈現(xiàn)Web頁面。此外,某些新型瀏覽器的頁面呈現(xiàn)屬性需要用到特殊的CSS聲明方式才會生效。這導(dǎo)致需要書寫大量的兼容不同瀏覽器的代碼。舉例而言,考慮下面表I中示出的示例性CSS代碼,其用于設(shè)置Web頁面的頁面寬度。在表I所示的示例中,由于不同類型瀏覽器(諸如,IE6、IE7等)以及不同模式(諸如,Gecko內(nèi)核模式、webkit內(nèi)核等)的存在,CSS的開發(fā)人員必須在層疊樣式表中顯式地包含針對不同類型瀏覽器和/或操作模式而編寫的不同代碼,盡管這些代碼本質(zhì)上都涉及相同的頁面屬性。
      表I由于CSS的開發(fā)和使用中存在的上述缺陷,在現(xiàn)有技術(shù)中,大量的人力、物カ和時間資源被花費用于編寫針對不同類型目標瀏覽器但涉及相同屬性的代碼。這顯然還會增加開發(fā)人員的學(xué)習(xí)成本。此外,在使用例如表I所示的現(xiàn)有技術(shù)CSS時,每個目標瀏覽器都必須讀取CSS中包含的所有代碼,包括自己無法解析的那些,這可能顯著影響瀏覽器執(zhí)行效率,并且增加了 CSS文件的尺寸,增加了網(wǎng)絡(luò)傳輸負擔(dān)。

      發(fā)明內(nèi)容
      為了克服現(xiàn)有技術(shù)中的上述缺陷,本發(fā)明的實施方式提供用于編譯層疊樣式表的方法和設(shè)備。在本發(fā)明的ー個方面,提供ー種用于對層疊樣式表進行編譯的方法,包括對讀取自所述層疊樣式表的代碼進行解析;以及根據(jù)所述解析的結(jié)果對所述層疊樣式表進行特定于瀏覽器的編譯。在本發(fā)明的可選實施方式中,所述解析包括確定所述層疊樣式表中包含的針對不同類型瀏覽器的、涉及相同屬性的代碼段;并且其中所述編譯包括將所述代碼段改寫為新代碼段,使得每個新代碼段僅包含針對特定類型瀏覽器的代碼。在本發(fā)明的可選實施方式中,該方法還包括生成新層疊樣式表,使得每個新層疊樣式表包含所述新代碼段。在本發(fā)明的可選實施方式中,所述解析包括確定所述層疊樣式表中包含的涉及特定類型瀏覽器無法支持的屬性的代碼段;并且其中所述編譯包括向所述代碼段添加針對所述特定類型瀏覽器的代碼,或者刪除所述代碼段。在本發(fā)明的可選實施方式中,所添加的代碼可包含腳本。在本發(fā)明的可選實施方式中,所述解析進ー步包括獲取與所述層疊樣式表相關(guān)聯(lián)的配置信息。此時,所述解析和編譯根據(jù)所述配置信息來執(zhí)行。在本發(fā)明的另一方面,提供ー種用于對層疊樣式表進行編譯的設(shè)備,包括解析裝置,配置用于對讀取自所述層疊樣式表的代碼進行解析;以及編譯裝置,配置用于根據(jù)所述解析的結(jié)果對所述層疊樣式表進行特定于瀏覽器的編譯。
      根據(jù)本發(fā)明的各種實施方式,可以針對特定的目標瀏覽器自適應(yīng)地編譯(優(yōu)化)層疊樣式表,從而克服上文提及的兼容性問題。這樣,目標瀏覽器只需關(guān)注對它而言有效的代碼,從而降低了 Web頁面的呈現(xiàn)和繪制過程中出現(xiàn)錯誤的概率,并且提高了效率。此外,根據(jù)本發(fā)明的實施方式,可以對已有的大量層疊樣式表進行處理,并且開發(fā)人員可以繼續(xù)按照已有的開發(fā)習(xí)慣來開發(fā)層疊樣式表,避免增加額外的學(xué)習(xí)成本。


      通過參考附圖閱讀下文的詳細描述,本發(fā)明實施方式的上述以及其他目的、特征和優(yōu)點將變得易于理解。在附圖中,以示例性而非限制性的方式示出了本發(fā)明的若干實施方式,其中圖I示出了根據(jù)本發(fā)明示例性實施方式的用于編譯層疊樣式表的方法100的流程圖;圖2示出了根據(jù)本發(fā)明示例性實施方式的用于編譯層疊樣式表的設(shè)備200的框圖;以及圖3示出了適合用來實踐本發(fā)明實施方式的計算機系統(tǒng)300的框圖。在附圖中,相同或?qū)?yīng)的標號表不相同或?qū)?yīng)的部分。
      具體實施例方式下面將參考若干示例性實施方式來描述本發(fā)明的原理和精神。應(yīng)當理解,給出這些實施方式僅僅是為了使本領(lǐng)域技術(shù)人員能夠更好地理解進而實現(xiàn)本發(fā)明,而并非以任何方式限制本發(fā)明的范圍。如上文所述,根據(jù)本發(fā)明的實施方式,提供一種用于編譯層疊樣式表CSS的方法和設(shè)備,用于針對特定的目標瀏覽器自適應(yīng)地編譯(優(yōu)化)層疊樣式表,從而現(xiàn)有技術(shù)中存在的兼容性問題。以此方式,目標瀏覽器只需關(guān)注對它而言有效的代碼,降低了 Web頁面的呈現(xiàn)和繪制過程中出現(xiàn)錯誤的概率,并且提高了效率。此外,根據(jù)本發(fā)明的實施方式,可以對已有的大量層疊樣式表進行處理。注意,在下文描述中使用的術(shù)語“特定于瀏覽器的編譯”和“定制編譯”表達相同的含義,并由此可互換使用。下面結(jié)合附圖以示例的方式詳細描述本發(fā)明的各種實施方式。首先參考圖1,其示出了根據(jù)本發(fā)明實施方式的用于編譯層疊樣式表的方法100的流程圖。應(yīng)當理解,方法100中記載的各個步驟可以按照不同的順序執(zhí)行,和/或并行執(zhí)行。此外,方法100可以包括附加的步驟和/或省略執(zhí)行示出的步驟。本發(fā)明的范圍在此方面不受限制。方法100開始之后,在步驟S 102,獲取與待處理的層疊樣式表相關(guān)聯(lián)的配置信息。如上文所述,本發(fā)明的主要目的之一是通過修改層疊樣式表中涉及某些屬性的代碼,來克服瀏覽器兼容性的問題。但是,如本領(lǐng)域已知的,某些屬性對于Web頁面的呈現(xiàn)可能具有比較關(guān)鍵或重要的作用,修改這些屬性可能導(dǎo)致Web頁面的呈現(xiàn)和/或行為發(fā)生異常。換言之,對某些CSS屬性的定制編譯可能給Web頁面帶來一定程度的副作用,例如不安全和不穩(wěn)定。因此,根據(jù)本發(fā)明的優(yōu)選實施方式,允許開發(fā)人員在編寫CSS文件的同時,提供與該CSS文件相關(guān)聯(lián)的配置信息,用以指示例如該CSS文件中的哪些部分和/或在使用哪些類型的瀏覽器執(zhí)行該CSS時,應(yīng)當執(zhí)行定制編譯。特別地,根據(jù)本發(fā)明的實施方式,可以通過此類配置信息來規(guī)定針對某些CSS屬性進行定制編譯,而針對另ー些CSS屬性進行常規(guī)處理。參見下面的表2,其示出根據(jù)本發(fā)明一種實施方式的配置信息的示例。在此例中,用戶(例如,CSS的開發(fā)人員)可以利用表中所示的自定義標簽來規(guī)定僅對該CSS中包含的指定屬性(position, min-height, float)
      執(zhí)打定制編譯。
      權(quán)利要求
      1.一種用于對層疊樣式表CSS進行編譯的方法,包括 對讀取自所述層疊樣式表的代碼進行解析;以及 根據(jù)所述解析的結(jié)果對所述層疊樣式表進行特定于瀏覽器的編譯。
      2.如權(quán)利要求I所述的方法,其中 所述解析包括 確定所述層疊樣式表中包含的針對不同類型瀏覽器的、涉及相同屬性的代碼段;并且其中 所述編譯包括 將所述代碼段改寫為新代碼段,使得每個新代碼段僅包含針對特定類型瀏覽器的代碼。
      3.如權(quán)利要求2所述的方法,還包括 生成新層疊樣式表,使得每個新層疊樣式表包含所述新代碼段。
      4.如權(quán)利要求I所述的方法,其中 所述解析包括 確定所述層疊樣式表中包含的涉及特定類型瀏覽器無法支持的屬性的代碼段;并且其中 所述編譯包括 向所述代碼段添加針對所述特定類型瀏覽器的代碼;或者刪除所述代碼段。
      5.如權(quán)利要求4所述的方法,其中所添加的代碼包含腳本。
      6.如任一在前權(quán)利要求所述的方法,進一步包括 獲取與所述層疊樣式表相關(guān)聯(lián)的配置信息; 并且其中,所述解析和編譯根據(jù)所述配置信息來執(zhí)行。
      7.一種用于對層疊樣式表CSS進行編譯的設(shè)備,包括 解析裝置,配置用于對讀取自所述層疊樣式表的代碼進行解析;以及 編譯裝置,配置用于根據(jù)所述解析的結(jié)果對所述層疊樣式表進行特定于瀏覽器的編譯。
      8.如權(quán)利要求7所述的設(shè)備,其中 所述解析裝置進一步包括配置用于確定所述層疊樣式表中包含的針對不同類型瀏覽器的、涉及相同屬性的代碼段的裝置;并且其中 所述編譯裝置進一步包括配置用于將所述代碼段改寫為新代碼段以使得每個新代碼段僅包含針對特定類型瀏覽器的代碼的裝置。
      9.如權(quán)利要求8所述的設(shè)備,還包括 CSS生成裝置,配置用于生成新層疊樣式表使得每個新層疊樣式表包含所述新代碼段。
      10.如權(quán)利要求7所述的設(shè)備,其中 所述解析裝置包括配置用于確定所述層疊樣式表中包含的涉及特定類型瀏覽器無法支持的屬性的代碼段的裝置;并且其中所述編譯裝置包括 代碼添加裝置,配置用于向所述代碼段添加針對所述特定類 型瀏覽器的代碼;以及代碼刪除裝置,配置用于刪除所述代碼段。
      11.如權(quán)利要求10所述的設(shè)備,其中所添加的代碼包含腳本。
      12.如權(quán)利要求7-11任一項所述的設(shè)備,進一步包括 配置信息獲取裝置,配置用于獲取與所述層疊樣式表相關(guān)聯(lián)的配置信息; 并且其中,所述解析裝置和編譯裝置分別配置用于根據(jù)所述配置信息來執(zhí)行所述解析和編譯。
      全文摘要
      本發(fā)明的實施方式涉及用于編譯層疊樣式表的方法和設(shè)備。具體地,公開了一種用于對層疊樣式表CSS進行編譯的方法,包括對讀取自所述層疊樣式表的代碼進行解析;以及根據(jù)所述解析的結(jié)果對所述層疊樣式表進行特定于瀏覽器的編譯。本發(fā)明的實施方式還公開了相應(yīng)的設(shè)備。根據(jù)本發(fā)明的實施方式,可以有效地解決層疊樣式表的瀏覽器兼容性問題。
      文檔編號G06F9/45GK102637135SQ201110037319
      公開日2012年8月15日 申請日期2011年2月9日 優(yōu)先權(quán)日2011年2月9日
      發(fā)明者李靖威 申請人:北京千橡網(wǎng)景科技發(fā)展有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1