摘要:中標(biāo)麒麟操作系統(tǒng)是國(guó)產(chǎn)品牌,注意使用過程中的問題發(fā)現(xiàn)及解決,對(duì)于提升其功能有著重要的意義。在中標(biāo)麒麟操作系統(tǒng)下,進(jìn)行基于Web系統(tǒng)的CSS開發(fā),常常出現(xiàn)多個(gè)瀏覽器顯示差異的問題,即跨瀏覽器不兼容的問題。一些小技巧可以解決跨瀏覽器出現(xiàn)的默認(rèn)邊距問題、表格內(nèi)容居中顯示問題、垂直居中問題、ul標(biāo)簽邊距問題和頁面的最小寬度等等。
關(guān)鍵詞:中標(biāo)麒麟;CSS;瀏覽器;兼容性
中圖分類號(hào):TP393.092 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 17-0000-02
1 引言
中標(biāo)麒麟操作系統(tǒng)(NeoKylin)是指我國(guó)民用的“中標(biāo)Linux”操作系統(tǒng)和部隊(duì)研制的“銀河麒麟”操作系統(tǒng)的組合而形成的軍民兩用操作系統(tǒng)。其主要特點(diǎn)是優(yōu)化和加固的Linux 2.6內(nèi)核技術(shù);全面改善內(nèi)存、CPU(多內(nèi)核系統(tǒng))、輸入輸出和網(wǎng)絡(luò)(IPV4/IPV6)的性能和可擴(kuò)展性;同時(shí)具有全面的審計(jì)能力,能夠記錄整個(gè)系統(tǒng)的活動(dòng)以及對(duì)整個(gè)系統(tǒng)所進(jìn)行的修改(比如對(duì)文件系統(tǒng)操作、進(jìn)程系統(tǒng)調(diào)用、用戶更改密碼等操作、添加/刪除/更改賬戶和更改配置等;還具有與Unix的互操作性,支持最新的AutoFS和NFSv4,可與Sun Solaris、HP-UX、IBM AIX等UNIX系統(tǒng)共享映射;此外還具有與Microsoft Windows互操作的性能,Samba提供了與微軟Windows文件和打?。–IFS)系統(tǒng)互用的功能,以及、更好的集成性和高度兼容性。在安全技術(shù)方面,特點(diǎn)尤其顯著,中標(biāo)麒麟系統(tǒng)具有KACF強(qiáng)制訪問控制框架、管理員分權(quán)、細(xì)粒度的自主訪問控制、進(jìn)程權(quán)能控制、類型實(shí)施強(qiáng)制訪問控制等特性,還具有安全審計(jì)、強(qiáng)制完整性控制、多級(jí)安全等技術(shù)指標(biāo)要求。這些特點(diǎn)集中起來,突出顯示了國(guó)產(chǎn)的中標(biāo)麒麟操作系統(tǒng)的高安全性、功能的完整性、操作的穩(wěn)定性和高效率,已經(jīng)達(dá)到了國(guó)外同類產(chǎn)品水平。目前,中標(biāo)麒麟系統(tǒng)已經(jīng)逐步應(yīng)用到了政府、國(guó)防、部隊(duì)、國(guó)家大型建設(shè)項(xiàng)目和企事業(yè)單位中,成為國(guó)產(chǎn)的操作系統(tǒng)品牌。
在中標(biāo)麒麟操作系統(tǒng)下,開發(fā)一個(gè)基于Web的系統(tǒng)時(shí),網(wǎng)頁設(shè)計(jì)部分是屬于系統(tǒng)顯示方面的內(nèi)容,為了系統(tǒng)顯示的內(nèi)容能體現(xiàn)整體化的特點(diǎn),在進(jìn)行系統(tǒng)開發(fā)時(shí),最常用的方式就是采用CSS(Cascading Style Sheets)樣式表來對(duì)網(wǎng)頁的整體結(jié)構(gòu)進(jìn)行控制。但是在系統(tǒng)開發(fā)出來進(jìn)行線上運(yùn)營(yíng)后,客戶端使用什么樣的瀏覽器卻是開發(fā)者難以控制的。由于使用者在客戶端使用的瀏覽器的種類不同,不同的瀏覽器對(duì)于同樣一個(gè)樣式的解釋也是不同的。這是因?yàn)椴煌臑g覽器開發(fā)商在進(jìn)行瀏覽器開發(fā)時(shí),并沒有完全按照一個(gè)通用的標(biāo)準(zhǔn)來對(duì)樣式表進(jìn)行語法定義,這樣的結(jié)果就是同樣的樣式表,通過不同的瀏覽器來表現(xiàn),結(jié)果是不一樣的。這也就是人們常說的瀏覽器兼容問題。這些問題是普遍存在的,在中標(biāo)麒麟操作系統(tǒng)下,這類跨瀏覽器兼容性問題同樣存在。我們?cè)O(shè)想通過一些細(xì)節(jié)改動(dòng),可以解決中標(biāo)麒麟操作系統(tǒng)下CSS開發(fā)時(shí)的跨瀏覽器兼容性問題。
2 中標(biāo)麒麟操作系統(tǒng)下CSS開發(fā)時(shí)跨瀏覽器兼容性問題
2.1 CSS及瀏覽器
2.1.1 CSS
所謂CSS就是W3C(World Wide Web Consortium,世界互聯(lián)網(wǎng)組織)制定的關(guān)于Web開發(fā)的一系列標(biāo)準(zhǔn)之一。該標(biāo)準(zhǔn)可以對(duì)基于Web開發(fā)的網(wǎng)頁的結(jié)構(gòu)進(jìn)行有效的控制。CSS的實(shí)現(xiàn)方式是在HTML中定義的,可以使用HTML自身的標(biāo)簽進(jìn)行實(shí)現(xiàn),也可以使用自定義的命名方式進(jìn)行實(shí)現(xiàn)。CSS既能對(duì)HTML的屬性進(jìn)行控制,例如整個(gè)網(wǎng)頁的字體、對(duì)象的位置、網(wǎng)頁的樣色、圖片的屬性、鼠標(biāo)的屬性等。而且,CSS還可以對(duì)文本的屬性進(jìn)行有效的控制??偠灾?,在中標(biāo)麒麟操作系統(tǒng)下進(jìn)行網(wǎng)頁設(shè)計(jì)時(shí),使用CSS可以對(duì)整個(gè)網(wǎng)頁的布局進(jìn)行合理的控制,使得網(wǎng)頁在實(shí)現(xiàn)的時(shí)候結(jié)構(gòu)和格式是分離的,可以分別進(jìn)行實(shí)現(xiàn)、維護(hù)和更新。這樣就使得網(wǎng)頁在運(yùn)行起來速度較快,而且易于實(shí)現(xiàn)網(wǎng)頁維護(hù)。
2.1.2 瀏覽器
當(dāng)前的基于Web開發(fā)的系統(tǒng),大多數(shù)都是基于B/S架構(gòu)的。基于該架構(gòu)開發(fā)的系統(tǒng)實(shí)際上就是瀏覽器/服務(wù)器模式。系統(tǒng)的核心內(nèi)容部署在一個(gè)服務(wù)器上,使用者想對(duì)這些內(nèi)容進(jìn)行訪問,需要在客戶端通過一個(gè)瀏覽器來實(shí)現(xiàn)。也就是說,使用者訪問的服務(wù)器的內(nèi)容在客戶端是通過瀏覽器顯示出來的。實(shí)際上,網(wǎng)頁瀏覽器對(duì)于單獨(dú)的一臺(tái)電腦而言,也相當(dāng)于中標(biāo)麒麟操作系統(tǒng)之上的一個(gè)應(yīng)用軟件,它的作用就是對(duì)網(wǎng)頁中的文件加以顯示,這些文件的內(nèi)容一般是由HTML代碼組成的。但是,僅僅是顯示內(nèi)容還不足以構(gòu)成瀏覽器的全部作用,它還要能實(shí)現(xiàn)使用者和服務(wù)器端對(duì)信息的交互。
瀏覽器的種類繁多,最常見的有:
微軟公司開發(fā)的IE瀏覽器。它綁定在Windows操作系統(tǒng)中,由于Windows操作系統(tǒng)在全球大約有大量的用戶,因此IE瀏覽器也是使用者最多的一款瀏覽器。由于中標(biāo)麒麟操作系統(tǒng)廣泛的兼容性,IE瀏覽器可以在中標(biāo)麒麟系統(tǒng)上使用。
Mazilla公司開發(fā)的MozillaFirefox瀏覽器,即俗稱火狐的瀏覽器。該瀏覽器的源代碼是開源的,而且該瀏覽器能夠跨多個(gè)操作系統(tǒng)平臺(tái)使用,常用的Windows、MarOScar和Linux等操作系統(tǒng)都兼容火狐瀏覽器。因此在中標(biāo)麒麟系統(tǒng)下,也可以自如應(yīng)用。火狐瀏覽器的核心代碼體積較小,這就使得火狐瀏覽器在訪問網(wǎng)頁時(shí)的速度較快。同時(shí),火狐能較好地解決瀏覽器的安全問題。
此外,還有遨游瀏覽器、騰訊瀏覽器、谷歌瀏覽器和360瀏覽器等。它們?cè)谛阅?、效率、占用資源等方面,都有優(yōu)越性,因而各自擁有一大批的客戶群。
目前網(wǎng)絡(luò)上在用的這些瀏覽器,基本上都能在中標(biāo)麒麟操作系統(tǒng)下應(yīng)用。但在開發(fā)CSS時(shí),卻存在著跨瀏覽器的兼容性問題,即在中標(biāo)麒麟系統(tǒng)下所進(jìn)行的CSS開發(fā),一些瀏覽器出現(xiàn)了無法兼容的問題。
2.2 跨瀏覽器兼容性問題的具體表現(xiàn)
在中標(biāo)麒麟系統(tǒng)下進(jìn)行網(wǎng)頁制作時(shí)所出現(xiàn)的瀏覽器兼容性問題是本文關(guān)注的重點(diǎn)。在本文中主要比較IE和火狐瀏覽器,兩者不兼容的主要表現(xiàn)有:
(1)默認(rèn)邊距問題。IE瀏覽器和火狐瀏覽器的默認(rèn)邊距的數(shù)值是不同的。這樣,相同的代碼在不同的瀏覽器解釋下,就會(huì)得到不同的結(jié)果,這不利于對(duì)網(wǎng)頁的整體辨識(shí)。
(2)表格內(nèi)容居中顯示問題。如果在代碼中對(duì)表格進(jìn)行了居中顯示的設(shè)置,則在IE瀏覽器中是居中顯示的,但是在火狐瀏覽器中卻是居左顯示的。
(3)垂直居中問題。網(wǎng)頁中經(jīng)常有文字或圖片設(shè)置為垂直居中顯示。如果進(jìn)行了垂直居中的設(shè)置,在火狐瀏覽器中可以正常顯示,但是在IE中卻顯示為頂端對(duì)齊。
(4)ul標(biāo)簽邊距問題。ul標(biāo)簽的兩個(gè)主要屬性是padding和margin。IE瀏覽器可以設(shè)置padding值,不能設(shè)定margin值,而火狐瀏覽器卻恰恰相反。
(5)頁面的最小寬度。min-width是一個(gè)CSS命令,它是指元素寬度最小也不能小于指定值。設(shè)定min-width的目的是為了保證網(wǎng)頁的格式。但是在IE中瀏覽器中,是不能識(shí)別min-width這個(gè)CSS命令的。在IE瀏覽器中會(huì)將width識(shí)別成最小寬度值。這樣就出現(xiàn)了問題。如果我們選擇使用width來定義,那么在火狐瀏覽器中,width就成為了一個(gè)常量,如果我們選擇使用min-width,那么在IE瀏覽器中就相當(dāng)于根本沒有設(shè)置寬度值。但是這個(gè)寬度值實(shí)際上是一個(gè)非常重要的屬性值。例如:在設(shè)計(jì)某個(gè)網(wǎng)頁時(shí),需要給該網(wǎng)頁設(shè)計(jì)一個(gè)背景圖片,這就需要設(shè)定這個(gè)圖片的寬度值。
這些問題,在Windows系統(tǒng)下和在中標(biāo)麒麟系統(tǒng)下,都同樣存在著。只不過作為國(guó)產(chǎn)操作系統(tǒng),這類跨瀏覽器兼容性問題,尤其需要認(rèn)真解決,以不斷完善國(guó)產(chǎn)品牌。
3 解決方法
在操作實(shí)踐中,靈活地采用一些技巧可以巧妙地解決這類跨瀏覽器的不兼容問題。
3.1 默認(rèn)邊距問題的解決
在進(jìn)行CSS開發(fā)時(shí),可通過添加代碼將不同瀏覽器的邊距統(tǒng)一為0。這對(duì)于其他類型的瀏覽器也是同樣適應(yīng)的。這就去除了跨瀏覽器的數(shù)值差異。
3.2 表格內(nèi)容不居中的問題解決
在設(shè)置時(shí),不設(shè)置為居左,而是在代碼中設(shè)置為auto,問題便迎刃而解。
3.3 垂直居中問題的解決
在頁面加上一段代碼,如下所示。
edge{
width:0;
height:100%;
display:inline-block;
vertica-align:middle;}
這樣就可以去除不居中的問題,所有的瀏覽器都能顯示為居中了。
3.4 ul標(biāo)簽邊距問題的解決
只要簡(jiǎn)單地添加代碼即可。即把padding和margin的值都設(shè)置為0,就可以了。
3.5 頁面的最小寬度問題的解決
如上所說,為了使min-width這個(gè)命令能兼容IE瀏覽器,可以選擇使用優(yōu)先權(quán)的方式來解決,優(yōu)先權(quán)用!important來表示。!important的作用是提高某一個(gè)指定語法的優(yōu)先級(jí)別。對(duì)于min-width這個(gè)語法,除了IE瀏覽器,其他的瀏覽器都是支持的。因此,為了讓IE瀏覽器也支持該語法,可以通過設(shè)定該語法的優(yōu)先級(jí)別來實(shí)現(xiàn)。具體的優(yōu)先級(jí)別的設(shè)置如下的代碼所示。
#element{
midth:auto!important;
width:200px;}
4 結(jié)束語
在中標(biāo)麒麟操作系統(tǒng)下制作網(wǎng)站時(shí),靈活采用上述技巧就可以有效解決幾種瀏覽器不兼容的問題。當(dāng)然還有一些其他不兼容的問題,還需要我們多做嘗試,盡可能找到更多更好的解決辦法。
參考文獻(xiàn):
[1]郭付才,劉志華.基于中標(biāo)麒麟操作系統(tǒng)的串口調(diào)試方法研究[J].微型機(jī)與應(yīng)用,2012(10).
[2]鞏恩偉.CSS的常用技巧淺析[J].信息科技中國(guó)科技信息,2009(5).
[3]黎亞紅,羅藤.CSS在不同瀏覽器中的兼容性問題淺析[J].岳陽職業(yè)技術(shù)學(xué)院院報(bào),2008(5).
[作者簡(jiǎn)介]
韓平,裝備學(xué)院信息管理中心,高級(jí)工程師。主要從事計(jì)算機(jī)網(wǎng)絡(luò)管理與應(yīng)用、教育技術(shù)應(yīng)用與管理等領(lǐng)域的研究。栗勇兵,裝備學(xué)院信息管理中心,講師。主要從事計(jì)算機(jī)網(wǎng)絡(luò)管理與應(yīng)用、教育技術(shù)應(yīng)用與管理等領(lǐng)域的研究。唐清安,裝備學(xué)院信息管理中心,高級(jí)工程師。主要從事計(jì)算機(jī)網(wǎng)絡(luò)管理與應(yīng)用、教育技術(shù)應(yīng)用與管理等領(lǐng)域的研究。